From d9cc2cfcb97c1b0449bcbfb6ab0301a58d77bd55 Mon Sep 17 00:00:00 2001 From: Pierre Ossman Date: Wed, 17 May 2006 16:34:18 +0000 Subject: Move xmalloc to the public side (libpolyp). git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@908 fefdeb5f-60dc-0310-8127-8f9354f1896f --- src/Makefile.am | 14 ++-- src/daemon/cmdline.c | 3 +- src/daemon/daemon-conf.c | 3 +- src/daemon/main.c | 2 +- src/modules/alsa-util.c | 3 +- src/modules/howl-wrap.c | 3 +- src/modules/module-alsa-sink.c | 3 +- src/modules/module-alsa-source.c | 3 +- src/modules/module-combine.c | 3 +- src/modules/module-detect.c | 3 +- src/modules/module-esound-sink.c | 3 +- src/modules/module-jack-sink.c | 3 +- src/modules/module-jack-source.c | 3 +- src/modules/module-lirc.c | 3 +- src/modules/module-match.c | 3 +- src/modules/module-mmkbd-evdev.c | 3 +- src/modules/module-null-sink.c | 3 +- src/modules/module-oss-mmap.c | 3 +- src/modules/module-oss.c | 3 +- src/modules/module-pipe-sink.c | 3 +- src/modules/module-pipe-source.c | 3 +- src/modules/module-protocol-stub.c | 3 +- src/modules/module-sine.c | 3 +- src/modules/module-solaris.c | 2 +- src/modules/module-tunnel.c | 2 +- src/modules/module-volume-restore.c | 3 +- src/modules/module-waveout.c | 3 +- src/modules/module-x11-bell.c | 3 +- src/modules/module-x11-publish.c | 3 +- src/modules/module-zeroconf-publish.c | 3 +- src/modules/rtp/module-rtp-recv.c | 3 +- src/modules/rtp/module-rtp-send.c | 3 +- src/modules/rtp/sap.c | 3 +- src/modules/rtp/sdp.c | 3 +- src/polyp/browser.c | 3 +- src/polyp/channelmap.c | 4 +- src/polyp/client-conf-x11.c | 3 +- src/polyp/client-conf.c | 3 +- src/polyp/context.c | 2 +- src/polyp/glib-mainloop.c | 3 +- src/polyp/glib12-mainloop.c | 3 +- src/polyp/mainloop-api.c | 3 +- src/polyp/mainloop-signal.c | 3 +- src/polyp/mainloop.c | 3 +- src/polyp/operation.c | 2 +- src/polyp/simple.c | 2 +- src/polyp/stream.c | 3 +- src/polyp/thread-mainloop.c | 3 +- src/polyp/xmalloc.c | 123 ++++++++++++++++++++++++++++++++++ src/polyp/xmalloc.h | 58 ++++++++++++++++ src/polypcore/authkey-prop.c | 3 +- src/polypcore/autoload.c | 3 +- src/polypcore/cli-command.c | 3 +- src/polypcore/cli-text.c | 3 +- src/polypcore/cli.c | 3 +- src/polypcore/client.c | 3 +- src/polypcore/conf-parser.c | 3 +- src/polypcore/core-scache.c | 3 +- src/polypcore/core-subscribe.c | 3 +- src/polypcore/core.c | 3 +- src/polypcore/dynarray.c | 2 +- src/polypcore/hashmap.c | 3 +- src/polypcore/idxset.c | 2 +- src/polypcore/iochannel.c | 3 +- src/polypcore/ioline.c | 3 +- src/polypcore/log.c | 3 +- src/polypcore/mcalign.c | 2 +- src/polypcore/memblock.c | 2 +- src/polypcore/memblockq.c | 3 +- src/polypcore/memchunk.c | 2 +- src/polypcore/modargs.c | 3 +- src/polypcore/modinfo.c | 3 +- src/polypcore/module.c | 3 +- src/polypcore/namereg.c | 3 +- src/polypcore/packet.c | 2 +- src/polypcore/parseaddr.c | 3 +- src/polypcore/pdispatch.c | 3 +- src/polypcore/pid.c | 3 +- src/polypcore/play-memchunk.c | 3 +- src/polypcore/props.c | 3 +- src/polypcore/protocol-cli.c | 3 +- src/polypcore/protocol-esound.c | 3 +- src/polypcore/protocol-http.c | 3 +- src/polypcore/protocol-native.c | 2 +- src/polypcore/protocol-simple.c | 3 +- src/polypcore/pstream.c | 3 +- src/polypcore/queue.c | 2 +- src/polypcore/resampler.c | 3 +- src/polypcore/sink-input.c | 3 +- src/polypcore/sink.c | 2 +- src/polypcore/socket-client.c | 3 +- src/polypcore/socket-server.c | 3 +- src/polypcore/socket-util.c | 3 +- src/polypcore/sound-file-stream.c | 3 +- src/polypcore/source-output.c | 3 +- src/polypcore/source.c | 3 +- src/polypcore/strbuf.c | 2 +- src/polypcore/strlist.c | 3 +- src/polypcore/tagstruct.c | 2 +- src/polypcore/tokenizer.c | 3 +- src/polypcore/utf8.c | 3 +- src/polypcore/util.c | 3 +- src/polypcore/x11wrap.c | 3 +- src/polypcore/xmalloc.c | 123 ---------------------------------- src/polypcore/xmalloc.h | 58 ---------------- src/tests/strlist-test.c | 2 +- src/tests/utf8-test.c | 2 +- 107 files changed, 374 insertions(+), 290 deletions(-) create mode 100644 src/polyp/xmalloc.c create mode 100644 src/polyp/xmalloc.h delete mode 100644 src/polypcore/xmalloc.c delete mode 100644 src/polypcore/xmalloc.h (limited to 'src') diff --git a/src/Makefile.am b/src/Makefile.am index bd48a0fb..afbdedee 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -273,10 +273,10 @@ mainloop_test_glib12_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS) memblockq_test_SOURCES = \ tests/memblockq-test.c \ + polyp/xmalloc.c \ polypcore/memblockq.c \ polypcore/log.c \ polypcore/memblock.c \ - polypcore/xmalloc.c \ polypcore/util.c \ polypcore/mcalign.c \ polypcore/memchunk.c @@ -313,7 +313,8 @@ polypinclude_HEADERS = \ polyp/subscribe.h \ polyp/version.h \ polyp/sample.h \ - polyp/volume.h + polyp/volume.h \ + polyp/xmalloc.h if HAVE_HOWL polypinclude_HEADERS += \ @@ -360,6 +361,7 @@ libpolyp_la_SOURCES = \ polyp/mainloop.c polyp/mainloop.h \ polyp/mainloop-signal.c polyp/mainloop-signal.h \ polyp/thread-mainloop.c polyp/thread-mainloop.h \ + polyp/xmalloc.c polyp/xmalloc.h \ polypcore/pipe.c polypcore/pipe.h \ polypcore/poll.c polypcore/poll.h @@ -392,7 +394,6 @@ libpolyp_la_SOURCES += \ polypcore/tagstruct.c polypcore/tagstruct.h \ polypcore/util.c polypcore/util.h \ polypcore/winsock.h \ - polypcore/xmalloc.c polypcore/xmalloc.h \ polypcore/llist.h if OS_IS_WIN32 @@ -485,8 +486,7 @@ polypcoreinclude_HEADERS = \ polypcore/strbuf.h \ polypcore/tokenizer.h \ polypcore/util.h \ - polypcore/utf8.h \ - polypcore/xmalloc.h + polypcore/utf8.h lib_LTLIBRARIES += libpolypcore.la @@ -497,7 +497,8 @@ libpolypcore_la_SOURCES = \ polyp/mainloop-api.c polyp/mainloop-api.h \ polyp/mainloop-signal.c polyp/mainloop-signal.h \ polyp/sample.c polyp/sample.h \ - polyp/volume.c polyp/volume.h + polyp/volume.c polyp/volume.h \ + polyp/xmalloc.c polyp/xmalloc.h # Pure core stuff (some are shared in libpolyp though). libpolypcore_la_SOURCES += \ @@ -546,7 +547,6 @@ libpolypcore_la_SOURCES += \ polypcore/tokenizer.c polypcore/tokenizer.h \ polypcore/util.c polypcore/util.h \ polypcore/winsock.h \ - polypcore/xmalloc.c polypcore/xmalloc.h \ polypcore/utf8.c polypcore/utf8.h if OS_IS_WIN32 diff --git a/src/daemon/cmdline.c b/src/daemon/cmdline.c index a6b95a81..1ed16a69 100644 --- a/src/daemon/cmdline.c +++ b/src/daemon/cmdline.c @@ -30,9 +30,10 @@ #include #include +#include + #include #include -#include #include "cmdline.h" diff --git a/src/daemon/daemon-conf.c b/src/daemon/daemon-conf.c index f41bb4b1..f82d3d24 100644 --- a/src/daemon/daemon-conf.c +++ b/src/daemon/daemon-conf.c @@ -29,8 +29,9 @@ #include #include +#include + #include -#include #include #include #include diff --git a/src/daemon/main.c b/src/daemon/main.c index e14837a9..a7144eba 100644 --- a/src/daemon/main.c +++ b/src/daemon/main.c @@ -51,6 +51,7 @@ #include #include +#include #include #include @@ -59,7 +60,6 @@ #include #include #include -#include #include #include #include diff --git a/src/modules/alsa-util.c b/src/modules/alsa-util.c index 503b8efb..122f4419 100644 --- a/src/modules/alsa-util.c +++ b/src/modules/alsa-util.c @@ -27,7 +27,8 @@ #include #include -#include +#include + #include #include "alsa-util.h" diff --git a/src/modules/howl-wrap.c b/src/modules/howl-wrap.c index f4605fb2..467ab9e2 100644 --- a/src/modules/howl-wrap.c +++ b/src/modules/howl-wrap.c @@ -21,8 +21,9 @@ #include +#include + #include -#include #include #include "howl-wrap.h" diff --git a/src/modules/module-alsa-sink.c b/src/modules/module-alsa-sink.c index 47065659..94de771c 100644 --- a/src/modules/module-alsa-sink.c +++ b/src/modules/module-alsa-sink.c @@ -34,6 +34,8 @@ #include +#include + #include #include #include @@ -41,7 +43,6 @@ #include #include #include -#include #include #include "alsa-util.h" diff --git a/src/modules/module-alsa-source.c b/src/modules/module-alsa-source.c index d46f8e42..b9d1ff87 100644 --- a/src/modules/module-alsa-source.c +++ b/src/modules/module-alsa-source.c @@ -34,6 +34,8 @@ #include +#include + #include #include #include @@ -41,7 +43,6 @@ #include #include #include -#include #include #include "alsa-util.h" diff --git a/src/modules/module-combine.c b/src/modules/module-combine.c index 369778a6..b31fe56e 100644 --- a/src/modules/module-combine.c +++ b/src/modules/module-combine.c @@ -26,6 +26,8 @@ #include #include +#include + #include #include #include @@ -33,7 +35,6 @@ #include #include #include -#include #include #include diff --git a/src/modules/module-detect.c b/src/modules/module-detect.c index 9cc13e81..ea14e68f 100644 --- a/src/modules/module-detect.c +++ b/src/modules/module-detect.c @@ -33,9 +33,10 @@ #include #include +#include + #include #include -#include #include #include diff --git a/src/modules/module-esound-sink.c b/src/modules/module-esound-sink.c index 1cc75502..1d61e01b 100644 --- a/src/modules/module-esound-sink.c +++ b/src/modules/module-esound-sink.c @@ -33,12 +33,13 @@ #include #include +#include + #include #include #include #include #include -#include #include #include #include diff --git a/src/modules/module-jack-sink.c b/src/modules/module-jack-sink.c index 324a2cb3..1aa73495 100644 --- a/src/modules/module-jack-sink.c +++ b/src/modules/module-jack-sink.c @@ -36,12 +36,13 @@ #include +#include + #include #include #include #include #include -#include #include #include diff --git a/src/modules/module-jack-source.c b/src/modules/module-jack-source.c index 94cabbea..29c46d85 100644 --- a/src/modules/module-jack-source.c +++ b/src/modules/module-jack-source.c @@ -36,12 +36,13 @@ #include +#include + #include #include #include #include #include -#include #include #include diff --git a/src/modules/module-lirc.c b/src/modules/module-lirc.c index 3bb0dc74..918177a3 100644 --- a/src/modules/module-lirc.c +++ b/src/modules/module-lirc.c @@ -30,11 +30,12 @@ #include #include +#include + #include #include #include #include -#include #include #include "module-lirc-symdef.h" diff --git a/src/modules/module-match.c b/src/modules/module-match.c index 9e3edb70..1692b5d8 100644 --- a/src/modules/module-match.c +++ b/src/modules/module-match.c @@ -32,12 +32,13 @@ #include #include +#include + #include #include #include #include #include -#include #include #include diff --git a/src/modules/module-mmkbd-evdev.c b/src/modules/module-mmkbd-evdev.c index 8ea56811..654fbaa4 100644 --- a/src/modules/module-mmkbd-evdev.c +++ b/src/modules/module-mmkbd-evdev.c @@ -33,11 +33,12 @@ #include +#include + #include #include #include #include -#include #include #include diff --git a/src/modules/module-null-sink.c b/src/modules/module-null-sink.c index 5cdfeab8..2cc49063 100644 --- a/src/modules/module-null-sink.c +++ b/src/modules/module-null-sink.c @@ -33,12 +33,13 @@ #include #include +#include + #include #include #include #include #include -#include #include #include "module-null-sink-symdef.h" diff --git a/src/modules/module-oss-mmap.c b/src/modules/module-oss-mmap.c index ddf33532..82e7d66d 100644 --- a/src/modules/module-oss-mmap.c +++ b/src/modules/module-oss-mmap.c @@ -36,6 +36,8 @@ #include #include +#include + #include #include #include @@ -43,7 +45,6 @@ #include #include #include -#include #include #include "oss-util.h" diff --git a/src/modules/module-oss.c b/src/modules/module-oss.c index f6d19544..46d100f1 100644 --- a/src/modules/module-oss.c +++ b/src/modules/module-oss.c @@ -35,6 +35,8 @@ #include #include +#include + #include #include #include @@ -42,7 +44,6 @@ #include #include #include -#include #include #include "oss-util.h" diff --git a/src/modules/module-pipe-sink.c b/src/modules/module-pipe-sink.c index 0fb73cd8..b59808fc 100644 --- a/src/modules/module-pipe-sink.c +++ b/src/modules/module-pipe-sink.c @@ -33,12 +33,13 @@ #include #include +#include + #include #include #include #include #include -#include #include #include "module-pipe-sink-symdef.h" diff --git a/src/modules/module-pipe-source.c b/src/modules/module-pipe-source.c index d999754a..4f3f9a6c 100644 --- a/src/modules/module-pipe-source.c +++ b/src/modules/module-pipe-source.c @@ -33,12 +33,13 @@ #include #include +#include + #include #include #include #include #include -#include #include #include "module-pipe-source-symdef.h" diff --git a/src/modules/module-protocol-stub.c b/src/modules/module-protocol-stub.c index d5b5f63b..79a59cd5 100644 --- a/src/modules/module-protocol-stub.c +++ b/src/modules/module-protocol-stub.c @@ -42,6 +42,8 @@ #include "../polypcore/winsock.h" +#include + #include #include #include @@ -49,7 +51,6 @@ #include #include #include -#include #ifdef USE_TCP_SOCKETS #define SOCKET_DESCRIPTION "(TCP sockets)" diff --git a/src/modules/module-sine.c b/src/modules/module-sine.c index 3267d49b..15b6c8a9 100644 --- a/src/modules/module-sine.c +++ b/src/modules/module-sine.c @@ -27,10 +27,11 @@ #include #include +#include + #include #include #include -#include #include #include diff --git a/src/modules/module-solaris.c b/src/modules/module-solaris.c index 3e7c2fb4..d82e3362 100644 --- a/src/modules/module-solaris.c +++ b/src/modules/module-solaris.c @@ -41,6 +41,7 @@ #include #include +#include #include #include @@ -49,7 +50,6 @@ #include #include #include -#include #include #include "module-solaris-symdef.h" diff --git a/src/modules/module-tunnel.c b/src/modules/module-tunnel.c index 2e04b120..a2a1e33d 100644 --- a/src/modules/module-tunnel.c +++ b/src/modules/module-tunnel.c @@ -32,13 +32,13 @@ #include #include +#include #include #include #include #include #include -#include #include #include #include diff --git a/src/modules/module-volume-restore.c b/src/modules/module-volume-restore.c index f9e7d013..ea40d862 100644 --- a/src/modules/module-volume-restore.c +++ b/src/modules/module-volume-restore.c @@ -32,12 +32,13 @@ #include #include +#include + #include #include #include #include #include -#include #include #include #include diff --git a/src/modules/module-waveout.c b/src/modules/module-waveout.c index 2d9c42eb..3d1f1b01 100644 --- a/src/modules/module-waveout.c +++ b/src/modules/module-waveout.c @@ -29,6 +29,8 @@ #include +#include + #include #include #include @@ -36,7 +38,6 @@ #include #include #include -#include #include "module-waveout-symdef.h" diff --git a/src/modules/module-x11-bell.c b/src/modules/module-x11-bell.c index e4d4020e..2b891bc1 100644 --- a/src/modules/module-x11-bell.c +++ b/src/modules/module-x11-bell.c @@ -31,11 +31,12 @@ #include #include +#include + #include #include #include #include -#include #include #include #include diff --git a/src/modules/module-x11-publish.c b/src/modules/module-x11-publish.c index 7408b930..e974487d 100644 --- a/src/modules/module-x11-publish.c +++ b/src/modules/module-x11-publish.c @@ -32,11 +32,12 @@ #include #include +#include + #include #include #include #include -#include #include #include #include diff --git a/src/modules/module-zeroconf-publish.c b/src/modules/module-zeroconf-publish.c index f8607bef..e5dce755 100644 --- a/src/modules/module-zeroconf-publish.c +++ b/src/modules/module-zeroconf-publish.c @@ -29,7 +29,8 @@ #include #include -#include +#include + #include #include #include diff --git a/src/modules/rtp/module-rtp-recv.c b/src/modules/rtp/module-rtp-recv.c index 925a1210..89aa8983 100644 --- a/src/modules/rtp/module-rtp-recv.c +++ b/src/modules/rtp/module-rtp-recv.c @@ -31,6 +31,8 @@ #include #include +#include + #include #include #include @@ -38,7 +40,6 @@ #include #include #include -#include #include #include #include diff --git a/src/modules/rtp/module-rtp-send.c b/src/modules/rtp/module-rtp-send.c index d0def859..8fc1d7fe 100644 --- a/src/modules/rtp/module-rtp-send.c +++ b/src/modules/rtp/module-rtp-send.c @@ -32,6 +32,8 @@ #include #include +#include + #include #include #include @@ -39,7 +41,6 @@ #include #include #include -#include #include #include diff --git a/src/modules/rtp/sap.c b/src/modules/rtp/sap.c index d2bca04d..e579b5c5 100644 --- a/src/modules/rtp/sap.c +++ b/src/modules/rtp/sap.c @@ -38,9 +38,10 @@ #include #endif +#include + #include #include -#include #include "sap.h" #include "sdp.h" diff --git a/src/modules/rtp/sdp.c b/src/modules/rtp/sdp.c index 84bcd83b..3cece711 100644 --- a/src/modules/rtp/sdp.c +++ b/src/modules/rtp/sdp.c @@ -31,9 +31,10 @@ #include #include +#include + #include #include -#include #include "sdp.h" #include "rtp.h" diff --git a/src/polyp/browser.c b/src/polyp/browser.c index cef680e4..5442fd4c 100644 --- a/src/polyp/browser.c +++ b/src/polyp/browser.c @@ -22,7 +22,8 @@ #include #include -#include +#include + #include #include diff --git a/src/polyp/channelmap.c b/src/polyp/channelmap.c index 7266a0a0..ddd7b3ce 100644 --- a/src/polyp/channelmap.c +++ b/src/polyp/channelmap.c @@ -28,8 +28,10 @@ #include #include +#include + #include -#include + #include "channelmap.h" const char *const table[] = { diff --git a/src/polyp/client-conf-x11.c b/src/polyp/client-conf-x11.c index 7187d86b..17ee2d6a 100644 --- a/src/polyp/client-conf-x11.c +++ b/src/polyp/client-conf-x11.c @@ -29,9 +29,10 @@ #include #include +#include + #include #include -#include #include #include "client-conf-x11.h" diff --git a/src/polyp/client-conf.c b/src/polyp/client-conf.c index d3ad0767..567d2ae4 100644 --- a/src/polyp/client-conf.c +++ b/src/polyp/client-conf.c @@ -29,7 +29,8 @@ #include #include -#include +#include + #include #include #include diff --git a/src/polyp/context.c b/src/polyp/context.c index d5cf90f8..3c46e2e8 100644 --- a/src/polyp/context.c +++ b/src/polyp/context.c @@ -48,6 +48,7 @@ #include "../polypcore/winsock.h" #include +#include #include #include @@ -56,7 +57,6 @@ #include #include #include -#include #include #include diff --git a/src/polyp/glib-mainloop.c b/src/polyp/glib-mainloop.c index 3937a1a9..bc5df3a9 100644 --- a/src/polyp/glib-mainloop.c +++ b/src/polyp/glib-mainloop.c @@ -25,8 +25,9 @@ #include +#include + #include -#include #include #include "glib.h" diff --git a/src/polyp/glib12-mainloop.c b/src/polyp/glib12-mainloop.c index 5ad23adb..7af21210 100644 --- a/src/polyp/glib12-mainloop.c +++ b/src/polyp/glib12-mainloop.c @@ -25,8 +25,9 @@ #include +#include + #include -#include #include #include "glib-mainloop.h" diff --git a/src/polyp/mainloop-api.c b/src/polyp/mainloop-api.c index 71f55c05..f29598dc 100644 --- a/src/polyp/mainloop-api.c +++ b/src/polyp/mainloop-api.c @@ -26,8 +26,9 @@ #include #include +#include + #include -#include #include "mainloop-api.h" diff --git a/src/polyp/mainloop-signal.c b/src/polyp/mainloop-signal.c index 4ffa00ba..a225f78b 100644 --- a/src/polyp/mainloop-signal.c +++ b/src/polyp/mainloop-signal.c @@ -36,8 +36,9 @@ #include #endif +#include + #include -#include #include #include diff --git a/src/polyp/mainloop.c b/src/polyp/mainloop.c index 589fe77e..82e789c5 100644 --- a/src/polyp/mainloop.c +++ b/src/polyp/mainloop.c @@ -44,9 +44,10 @@ #include "../polypcore/pipe.h" #endif +#include + #include #include -#include #include #include "mainloop.h" diff --git a/src/polyp/operation.c b/src/polyp/operation.c index 1c0cb99f..5af9ec0b 100644 --- a/src/polyp/operation.c +++ b/src/polyp/operation.c @@ -25,7 +25,7 @@ #include -#include +#include #include "internal.h" #include "operation.h" diff --git a/src/polyp/simple.c b/src/polyp/simple.c index 1f25869b..b56406c9 100644 --- a/src/polyp/simple.c +++ b/src/polyp/simple.c @@ -30,9 +30,9 @@ #include #include +#include #include -#include #include #include "simple.h" diff --git a/src/polyp/stream.c b/src/polyp/stream.c index b2711ce0..f188e788 100644 --- a/src/polyp/stream.c +++ b/src/polyp/stream.c @@ -29,7 +29,8 @@ #include #include -#include +#include + #include #include #include diff --git a/src/polyp/thread-mainloop.c b/src/polyp/thread-mainloop.c index 20639e9e..d036a232 100644 --- a/src/polyp/thread-mainloop.c +++ b/src/polyp/thread-mainloop.c @@ -41,8 +41,9 @@ #include #endif +#include + #include -#include #include #include "mainloop.h" diff --git a/src/polyp/xmalloc.c b/src/polyp/xmalloc.c new file mode 100644 index 00000000..4c8689a6 --- /dev/null +++ b/src/polyp/xmalloc.c @@ -0,0 +1,123 @@ +/* $Id$ */ + +/*** + This file is part of polypaudio. + + polypaudio is free software; you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 2 of the License, + or (at your option) any later version. + + polypaudio is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with polypaudio; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + USA. +***/ + +#ifdef HAVE_CONFIG_H +#include +#endif + +#include +#include +#include +#include +#include + +#include +#include + +#include "xmalloc.h" + +/* Make sure not to allocate more than this much memory. */ +#define MAX_ALLOC_SIZE (1024*1024*20) /* 20MB */ + +/* #undef malloc */ +/* #undef free */ +/* #undef realloc */ +/* #undef strndup */ +/* #undef strdup */ + +static void oom(void) PA_GCC_NORETURN; + +/** called in case of an OOM situation. Prints an error message and + * exits */ +static void oom(void) { + static const char e[] = "Not enough memory\n"; + pa_loop_write(STDERR_FILENO, e, sizeof(e)-1); +#ifdef SIGQUIT + raise(SIGQUIT); +#endif + _exit(1); +} + +void* pa_xmalloc(size_t size) { + void *p; + assert(size > 0); + assert(size < MAX_ALLOC_SIZE); + + if (!(p = malloc(size))) + oom(); + + return p; +} + +void* pa_xmalloc0(size_t size) { + void *p; + assert(size > 0); + assert(size < MAX_ALLOC_SIZE); + + if (!(p = calloc(1, size))) + oom(); + + return p; +} + +void *pa_xrealloc(void *ptr, size_t size) { + void *p; + assert(size > 0); + assert(size < MAX_ALLOC_SIZE); + + if (!(p = realloc(ptr, size))) + oom(); + return p; +} + +void* pa_xmemdup(const void *p, size_t l) { + if (!p) + return NULL; + else { + char *r = pa_xmalloc(l); + memcpy(r, p, l); + return r; + } +} + +char *pa_xstrdup(const char *s) { + if (!s) + return NULL; + + return pa_xmemdup(s, strlen(s)+1); +} + +char *pa_xstrndup(const char *s, size_t l) { + if (!s) + return NULL; + else { + char *r; + size_t t = strlen(s); + + if (t > l) + t = l; + + r = pa_xmemdup(s, t+1); + r[t] = 0; + return r; + } +} + diff --git a/src/polyp/xmalloc.h b/src/polyp/xmalloc.h new file mode 100644 index 00000000..2946011a --- /dev/null +++ b/src/polyp/xmalloc.h @@ -0,0 +1,58 @@ +#ifndef foomemoryhfoo +#define foomemoryhfoo + +/* $Id$ */ + +/*** + This file is part of polypaudio. + + polypaudio is free software; you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 2 of the License, + or (at your option) any later version. + + polypaudio is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with polypaudio; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + USA. +***/ + +#include +#include +#include +#include + +void* pa_xmalloc(size_t l); +void *pa_xmalloc0(size_t l); +void *pa_xrealloc(void *ptr, size_t size); +#define pa_xfree free + +char *pa_xstrdup(const char *s); +char *pa_xstrndup(const char *s, size_t l); + +void* pa_xmemdup(const void *p, size_t l); + +/** Internal helper for pa_xnew() */ +static inline void* pa_xnew_internal(unsigned n, size_t k) { + assert(n < INT_MAX/k); + return pa_xmalloc(n*k); +} + +/** Allocate n new structures of the specified type. */ +#define pa_xnew(type, n) ((type*) pa_xnew_internal((n), sizeof(type))) + +/** Internal helper for pa_xnew0() */ +static inline void* pa_xnew0_internal(unsigned n, size_t k) { + assert(n < INT_MAX/k); + return pa_xmalloc0(n*k); +} + +/** Same as pa_xnew() but set the memory to zero */ +#define pa_xnew0(type, n) ((type*) pa_xnew0_internal((n), sizeof(type))) + +#endif diff --git a/src/polypcore/authkey-prop.c b/src/polypcore/authkey-prop.c index 3faf0ef1..6172d432 100644 --- a/src/polypcore/authkey-prop.c +++ b/src/polypcore/authkey-prop.c @@ -22,7 +22,8 @@ #include #include -#include +#include + #include #include diff --git a/src/polypcore/autoload.c b/src/polypcore/autoload.c index 8d2dca30..386de219 100644 --- a/src/polypcore/autoload.c +++ b/src/polypcore/autoload.c @@ -27,8 +27,9 @@ #include #include +#include + #include -#include #include #include #include diff --git a/src/polypcore/cli-command.c b/src/polypcore/cli-command.c index 180c61e9..5556bcb3 100644 --- a/src/polypcore/cli-command.c +++ b/src/polypcore/cli-command.c @@ -29,6 +29,8 @@ #include #include +#include + #include #include #include @@ -44,7 +46,6 @@ #include #include #include -#include #include #include #include diff --git a/src/polypcore/cli-text.c b/src/polypcore/cli-text.c index 74de5781..09ccaa00 100644 --- a/src/polypcore/cli-text.c +++ b/src/polypcore/cli-text.c @@ -27,6 +27,8 @@ #include #include +#include + #include #include #include @@ -37,7 +39,6 @@ #include #include #include -#include #include "cli-text.h" diff --git a/src/polypcore/cli.c b/src/polypcore/cli.c index 583f6845..683d29ec 100644 --- a/src/polypcore/cli.c +++ b/src/polypcore/cli.c @@ -28,6 +28,8 @@ #include #include +#include + #include #include #include @@ -40,7 +42,6 @@ #include #include #include -#include #include #include "cli.h" diff --git a/src/polypcore/client.c b/src/polypcore/client.c index be970470..b5ed2fd0 100644 --- a/src/polypcore/client.c +++ b/src/polypcore/client.c @@ -28,7 +28,8 @@ #include #include -#include +#include + #include #include diff --git a/src/polypcore/conf-parser.c b/src/polypcore/conf-parser.c index 26fc33b5..64e66c2e 100644 --- a/src/polypcore/conf-parser.c +++ b/src/polypcore/conf-parser.c @@ -28,9 +28,10 @@ #include #include +#include + #include #include -#include #include "conf-parser.h" diff --git a/src/polypcore/core-scache.c b/src/polypcore/core-scache.c index 3bba38ed..8080fcd6 100644 --- a/src/polypcore/core-scache.c +++ b/src/polypcore/core-scache.c @@ -44,10 +44,11 @@ #include #include #include +#include + #include #include #include -#include #include #include #include diff --git a/src/polypcore/core-subscribe.c b/src/polypcore/core-subscribe.c index fa6c0e50..52babb7a 100644 --- a/src/polypcore/core-subscribe.c +++ b/src/polypcore/core-subscribe.c @@ -26,8 +26,9 @@ #include #include +#include + #include -#include #include #include "core-subscribe.h" diff --git a/src/polypcore/core.c b/src/polypcore/core.c index 0093aebd..ff8ec081 100644 --- a/src/polypcore/core.c +++ b/src/polypcore/core.c @@ -28,6 +28,8 @@ #include #include +#include + #include #include #include @@ -35,7 +37,6 @@ #include #include #include -#include #include #include #include diff --git a/src/polypcore/dynarray.c b/src/polypcore/dynarray.c index 1aff7f51..234c2c03 100644 --- a/src/polypcore/dynarray.c +++ b/src/polypcore/dynarray.c @@ -27,7 +27,7 @@ #include #include -#include +#include #include "dynarray.h" diff --git a/src/polypcore/hashmap.c b/src/polypcore/hashmap.c index 8861fd3d..adc322f0 100644 --- a/src/polypcore/hashmap.c +++ b/src/polypcore/hashmap.c @@ -27,8 +27,9 @@ #include #include +#include + #include -#include #include #include "hashmap.h" diff --git a/src/polypcore/idxset.c b/src/polypcore/idxset.c index f970ae5e..bde5c279 100644 --- a/src/polypcore/idxset.c +++ b/src/polypcore/idxset.c @@ -28,7 +28,7 @@ #include #include -#include +#include #include "idxset.h" diff --git a/src/polypcore/iochannel.c b/src/polypcore/iochannel.c index aba0399c..a1ad5dea 100644 --- a/src/polypcore/iochannel.c +++ b/src/polypcore/iochannel.c @@ -38,9 +38,10 @@ #include "winsock.h" +#include + #include #include -#include #include #include "iochannel.h" diff --git a/src/polypcore/ioline.c b/src/polypcore/ioline.c index eb8fdda5..9bb610fe 100644 --- a/src/polypcore/ioline.c +++ b/src/polypcore/ioline.c @@ -29,7 +29,8 @@ #include #include -#include +#include + #include #include "ioline.h" diff --git a/src/polypcore/log.c b/src/polypcore/log.c index 9c9ed2fd..9908d168 100644 --- a/src/polypcore/log.c +++ b/src/polypcore/log.c @@ -33,7 +33,8 @@ #include #endif -#include +#include + #include #include "log.h" diff --git a/src/polypcore/mcalign.c b/src/polypcore/mcalign.c index f90fd7e8..d9267f99 100644 --- a/src/polypcore/mcalign.c +++ b/src/polypcore/mcalign.c @@ -28,7 +28,7 @@ #include #include -#include +#include #include "mcalign.h" diff --git a/src/polypcore/memblock.c b/src/polypcore/memblock.c index 04e8436f..a0e5135b 100644 --- a/src/polypcore/memblock.c +++ b/src/polypcore/memblock.c @@ -28,7 +28,7 @@ #include #include -#include +#include #include "memblock.h" diff --git a/src/polypcore/memblockq.c b/src/polypcore/memblockq.c index 90e1d9eb..caacd96f 100644 --- a/src/polypcore/memblockq.c +++ b/src/polypcore/memblockq.c @@ -30,7 +30,8 @@ #include #include -#include +#include + #include #include diff --git a/src/polypcore/memchunk.c b/src/polypcore/memchunk.c index d6856ab8..918b3f0f 100644 --- a/src/polypcore/memchunk.c +++ b/src/polypcore/memchunk.c @@ -28,7 +28,7 @@ #include #include -#include +#include #include "memchunk.h" diff --git a/src/polypcore/modargs.c b/src/polypcore/modargs.c index 713326bf..63cc779d 100644 --- a/src/polypcore/modargs.c +++ b/src/polypcore/modargs.c @@ -28,13 +28,14 @@ #include #include +#include + #include #include #include #include #include #include -#include #include #include "modargs.h" diff --git a/src/polypcore/modinfo.c b/src/polypcore/modinfo.c index 39186ceb..241076c6 100644 --- a/src/polypcore/modinfo.c +++ b/src/polypcore/modinfo.c @@ -26,7 +26,8 @@ #include #include -#include +#include + #include #include diff --git a/src/polypcore/module.c b/src/polypcore/module.c index 5412f397..fe177a5b 100644 --- a/src/polypcore/module.c +++ b/src/polypcore/module.c @@ -30,7 +30,8 @@ #include #include -#include +#include + #include #include #include diff --git a/src/polypcore/namereg.c b/src/polypcore/namereg.c index 9229a0f9..cf11f5a4 100644 --- a/src/polypcore/namereg.c +++ b/src/polypcore/namereg.c @@ -29,10 +29,11 @@ #include #include +#include + #include #include #include -#include #include #include diff --git a/src/polypcore/packet.c b/src/polypcore/packet.c index 31ddad95..646b59e0 100644 --- a/src/polypcore/packet.c +++ b/src/polypcore/packet.c @@ -26,7 +26,7 @@ #include #include -#include +#include #include "packet.h" diff --git a/src/polypcore/parseaddr.c b/src/polypcore/parseaddr.c index c2b25c89..7e518a5d 100644 --- a/src/polypcore/parseaddr.c +++ b/src/polypcore/parseaddr.c @@ -27,7 +27,8 @@ #include #include -#include +#include + #include #include "parseaddr.h" diff --git a/src/polypcore/pdispatch.c b/src/polypcore/pdispatch.c index b087f1a5..21e3644e 100644 --- a/src/polypcore/pdispatch.c +++ b/src/polypcore/pdispatch.c @@ -27,8 +27,9 @@ #include #include +#include + #include -#include #include #include #include diff --git a/src/polypcore/pid.c b/src/polypcore/pid.c index b258290b..53b8ad0a 100644 --- a/src/polypcore/pid.c +++ b/src/polypcore/pid.c @@ -39,9 +39,10 @@ #include #endif +#include + #include #include -#include #include "pid.h" diff --git a/src/polypcore/play-memchunk.c b/src/polypcore/play-memchunk.c index 37ebdcf1..982cedc7 100644 --- a/src/polypcore/play-memchunk.c +++ b/src/polypcore/play-memchunk.c @@ -28,8 +28,9 @@ #include #include +#include + #include -#include #include #include "play-memchunk.h" diff --git a/src/polypcore/props.c b/src/polypcore/props.c index 96cdc4f2..1db44ee7 100644 --- a/src/polypcore/props.c +++ b/src/polypcore/props.c @@ -21,7 +21,8 @@ #include -#include +#include + #include #include "props.h" diff --git a/src/polypcore/protocol-cli.c b/src/polypcore/protocol-cli.c index 7dd489f7..076411cf 100644 --- a/src/polypcore/protocol-cli.c +++ b/src/polypcore/protocol-cli.c @@ -26,8 +26,9 @@ #include #include +#include + #include -#include #include #include "protocol-cli.h" diff --git a/src/polypcore/protocol-esound.c b/src/polypcore/protocol-esound.c index fcbeba6d..86a8c9e3 100644 --- a/src/polypcore/protocol-esound.c +++ b/src/polypcore/protocol-esound.c @@ -31,6 +31,8 @@ #include #include +#include + #include #include #include @@ -42,7 +44,6 @@ #include #include #include -#include #include #include #include diff --git a/src/polypcore/protocol-http.c b/src/polypcore/protocol-http.c index 85ddebee..68864237 100644 --- a/src/polypcore/protocol-http.c +++ b/src/polypcore/protocol-http.c @@ -28,8 +28,9 @@ #include #include +#include + #include -#include #include #include #include diff --git a/src/polypcore/protocol-native.c b/src/polypcore/protocol-native.c index 3b904134..b0ad5955 100644 --- a/src/polypcore/protocol-native.c +++ b/src/polypcore/protocol-native.c @@ -30,6 +30,7 @@ #include #include +#include #include #include @@ -43,7 +44,6 @@ #include #include #include -#include #include #include #include diff --git a/src/polypcore/protocol-simple.c b/src/polypcore/protocol-simple.c index 1e3b169c..caffd5c9 100644 --- a/src/polypcore/protocol-simple.c +++ b/src/polypcore/protocol-simple.c @@ -30,12 +30,13 @@ #include #include +#include + #include #include #include #include #include -#include #include #include "protocol-simple.h" diff --git a/src/polypcore/pstream.c b/src/polypcore/pstream.c index 09bd1e27..074cab91 100644 --- a/src/polypcore/pstream.c +++ b/src/polypcore/pstream.c @@ -34,8 +34,9 @@ #include "winsock.h" +#include + #include -#include #include #include diff --git a/src/polypcore/queue.c b/src/polypcore/queue.c index 77ca1ed3..01f957d9 100644 --- a/src/polypcore/queue.c +++ b/src/polypcore/queue.c @@ -26,7 +26,7 @@ #include #include -#include +#include #include "queue.h" diff --git a/src/polypcore/resampler.c b/src/polypcore/resampler.c index b2a8874b..33e8c295 100644 --- a/src/polypcore/resampler.c +++ b/src/polypcore/resampler.c @@ -30,8 +30,9 @@ #include #include +#include + #include -#include #include #include "resampler.h" diff --git a/src/polypcore/sink-input.c b/src/polypcore/sink-input.c index c1026390..5c0caa21 100644 --- a/src/polypcore/sink-input.c +++ b/src/polypcore/sink-input.c @@ -28,8 +28,9 @@ #include #include +#include + #include -#include #include #include #include diff --git a/src/polypcore/sink.c b/src/polypcore/sink.c index b59f1eaa..a873c00a 100644 --- a/src/polypcore/sink.c +++ b/src/polypcore/sink.c @@ -29,12 +29,12 @@ #include #include +#include #include #include #include #include -#include #include #include #include diff --git a/src/polypcore/socket-client.c b/src/polypcore/socket-client.c index 734b9dde..a61cf582 100644 --- a/src/polypcore/socket-client.c +++ b/src/polypcore/socket-client.c @@ -54,9 +54,10 @@ #include "winsock.h" +#include + #include #include -#include #include #include diff --git a/src/polypcore/socket-server.c b/src/polypcore/socket-server.c index f7e0b647..959173f2 100644 --- a/src/polypcore/socket-server.c +++ b/src/polypcore/socket-server.c @@ -62,8 +62,9 @@ #include "winsock.h" +#include + #include -#include #include #include diff --git a/src/polypcore/socket-util.c b/src/polypcore/socket-util.c index 915c7f22..0961db21 100644 --- a/src/polypcore/socket-util.c +++ b/src/polypcore/socket-util.c @@ -59,8 +59,9 @@ #include "winsock.h" +#include + #include -#include #include #include "socket-util.h" diff --git a/src/polypcore/sound-file-stream.c b/src/polypcore/sound-file-stream.c index fdacea54..68fd8a89 100644 --- a/src/polypcore/sound-file-stream.c +++ b/src/polypcore/sound-file-stream.c @@ -30,8 +30,9 @@ #include +#include + #include -#include #include #include "sound-file-stream.h" diff --git a/src/polypcore/source-output.c b/src/polypcore/source-output.c index b3113071..c8db870b 100644 --- a/src/polypcore/source-output.c +++ b/src/polypcore/source-output.c @@ -28,7 +28,8 @@ #include #include -#include +#include + #include #include #include diff --git a/src/polypcore/source.c b/src/polypcore/source.c index fca281a7..4d96622b 100644 --- a/src/polypcore/source.c +++ b/src/polypcore/source.c @@ -28,9 +28,10 @@ #include #include +#include + #include #include -#include #include #include #include diff --git a/src/polypcore/strbuf.c b/src/polypcore/strbuf.c index dcad5e78..d1517a11 100644 --- a/src/polypcore/strbuf.c +++ b/src/polypcore/strbuf.c @@ -30,7 +30,7 @@ #include #include -#include +#include #include "strbuf.h" diff --git a/src/polypcore/strlist.c b/src/polypcore/strlist.c index e165aefd..4d70e9e9 100644 --- a/src/polypcore/strlist.c +++ b/src/polypcore/strlist.c @@ -26,7 +26,8 @@ #include #include -#include +#include + #include #include diff --git a/src/polypcore/tagstruct.c b/src/polypcore/tagstruct.c index 86b8368a..27582cae 100644 --- a/src/polypcore/tagstruct.c +++ b/src/polypcore/tagstruct.c @@ -36,7 +36,7 @@ #include "winsock.h" -#include +#include #include "tagstruct.h" diff --git a/src/polypcore/tokenizer.c b/src/polypcore/tokenizer.c index 556a190a..667643fe 100644 --- a/src/polypcore/tokenizer.c +++ b/src/polypcore/tokenizer.c @@ -27,8 +27,9 @@ #include #include +#include + #include -#include #include #include "tokenizer.h" diff --git a/src/polypcore/utf8.c b/src/polypcore/utf8.c index bb8621e2..01fbfccd 100644 --- a/src/polypcore/utf8.c +++ b/src/polypcore/utf8.c @@ -33,8 +33,9 @@ #include #include +#include + #include "utf8.h" -#include "xmalloc.h" #define FILTER_CHAR '_' diff --git a/src/polypcore/util.c b/src/polypcore/util.c index 6f7f8819..9783b746 100644 --- a/src/polypcore/util.c +++ b/src/polypcore/util.c @@ -70,7 +70,8 @@ #include "winsock.h" -#include +#include + #include #include "util.h" diff --git a/src/polypcore/x11wrap.c b/src/polypcore/x11wrap.c index c1ca83ca..41a40764 100644 --- a/src/polypcore/x11wrap.c +++ b/src/polypcore/x11wrap.c @@ -22,8 +22,9 @@ #include #include +#include + #include -#include #include #include diff --git a/src/polypcore/xmalloc.c b/src/polypcore/xmalloc.c deleted file mode 100644 index 4c8689a6..00000000 --- a/src/polypcore/xmalloc.c +++ /dev/null @@ -1,123 +0,0 @@ -/* $Id$ */ - -/*** - This file is part of polypaudio. - - polypaudio is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2 of the License, - or (at your option) any later version. - - polypaudio is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU Lesser General Public License - along with polypaudio; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 - USA. -***/ - -#ifdef HAVE_CONFIG_H -#include -#endif - -#include -#include -#include -#include -#include - -#include -#include - -#include "xmalloc.h" - -/* Make sure not to allocate more than this much memory. */ -#define MAX_ALLOC_SIZE (1024*1024*20) /* 20MB */ - -/* #undef malloc */ -/* #undef free */ -/* #undef realloc */ -/* #undef strndup */ -/* #undef strdup */ - -static void oom(void) PA_GCC_NORETURN; - -/** called in case of an OOM situation. Prints an error message and - * exits */ -static void oom(void) { - static const char e[] = "Not enough memory\n"; - pa_loop_write(STDERR_FILENO, e, sizeof(e)-1); -#ifdef SIGQUIT - raise(SIGQUIT); -#endif - _exit(1); -} - -void* pa_xmalloc(size_t size) { - void *p; - assert(size > 0); - assert(size < MAX_ALLOC_SIZE); - - if (!(p = malloc(size))) - oom(); - - return p; -} - -void* pa_xmalloc0(size_t size) { - void *p; - assert(size > 0); - assert(size < MAX_ALLOC_SIZE); - - if (!(p = calloc(1, size))) - oom(); - - return p; -} - -void *pa_xrealloc(void *ptr, size_t size) { - void *p; - assert(size > 0); - assert(size < MAX_ALLOC_SIZE); - - if (!(p = realloc(ptr, size))) - oom(); - return p; -} - -void* pa_xmemdup(const void *p, size_t l) { - if (!p) - return NULL; - else { - char *r = pa_xmalloc(l); - memcpy(r, p, l); - return r; - } -} - -char *pa_xstrdup(const char *s) { - if (!s) - return NULL; - - return pa_xmemdup(s, strlen(s)+1); -} - -char *pa_xstrndup(const char *s, size_t l) { - if (!s) - return NULL; - else { - char *r; - size_t t = strlen(s); - - if (t > l) - t = l; - - r = pa_xmemdup(s, t+1); - r[t] = 0; - return r; - } -} - diff --git a/src/polypcore/xmalloc.h b/src/polypcore/xmalloc.h deleted file mode 100644 index 2946011a..00000000 --- a/src/polypcore/xmalloc.h +++ /dev/null @@ -1,58 +0,0 @@ -#ifndef foomemoryhfoo -#define foomemoryhfoo - -/* $Id$ */ - -/*** - This file is part of polypaudio. - - polypaudio is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2 of the License, - or (at your option) any later version. - - polypaudio is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU Lesser General Public License - along with polypaudio; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 - USA. -***/ - -#include -#include -#include -#include - -void* pa_xmalloc(size_t l); -void *pa_xmalloc0(size_t l); -void *pa_xrealloc(void *ptr, size_t size); -#define pa_xfree free - -char *pa_xstrdup(const char *s); -char *pa_xstrndup(const char *s, size_t l); - -void* pa_xmemdup(const void *p, size_t l); - -/** Internal helper for pa_xnew() */ -static inline void* pa_xnew_internal(unsigned n, size_t k) { - assert(n < INT_MAX/k); - return pa_xmalloc(n*k); -} - -/** Allocate n new structures of the specified type. */ -#define pa_xnew(type, n) ((type*) pa_xnew_internal((n), sizeof(type))) - -/** Internal helper for pa_xnew0() */ -static inline void* pa_xnew0_internal(unsigned n, size_t k) { - assert(n < INT_MAX/k); - return pa_xmalloc0(n*k); -} - -/** Same as pa_xnew() but set the memory to zero */ -#define pa_xnew0(type, n) ((type*) pa_xnew0_internal((n), sizeof(type))) - -#endif diff --git a/src/tests/strlist-test.c b/src/tests/strlist-test.c index 14543112..415c94e6 100644 --- a/src/tests/strlist-test.c +++ b/src/tests/strlist-test.c @@ -1,7 +1,7 @@ #include +#include #include -#include #include int main(PA_GCC_UNUSED int argc, PA_GCC_UNUSED char* argv[]) { diff --git a/src/tests/utf8-test.c b/src/tests/utf8-test.c index c8b2fabb..57f445c7 100644 --- a/src/tests/utf8-test.c +++ b/src/tests/utf8-test.c @@ -3,8 +3,8 @@ #include #include +#include #include -#include int main(int argc, char *argv[]) { char *c; -- cgit