diff options
author | Lennart Poettering <lennart@poettering.net> | 2006-05-17 19:07:30 +0000 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2006-05-17 19:07:30 +0000 |
commit | 56d8e56431e988716ef5580f95ab4361b7a2ebe1 (patch) | |
tree | 2c3b5326482784ed7c7f15d336e0c5c9574dc592 | |
parent | 6e9f2d70937e9b8dc09a753e3d678fe11a5754ca (diff) |
* make pa_xfree() a real function
* update doxygen docs for xmalloc.h
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@913 fefdeb5f-60dc-0310-8127-8f9354f1896f
-rw-r--r-- | src/polyp/xmalloc.c | 6 | ||||
-rw-r--r-- | src/polyp/xmalloc.h | 17 |
2 files changed, 22 insertions, 1 deletions
diff --git a/src/polyp/xmalloc.c b/src/polyp/xmalloc.c index 4c8689a6..1deeebd8 100644 --- a/src/polyp/xmalloc.c +++ b/src/polyp/xmalloc.c @@ -121,3 +121,9 @@ char *pa_xstrndup(const char *s, size_t l) { } } +void pa_xfree(void *p) { + if (!p) + return; + + free(p); +} diff --git a/src/polyp/xmalloc.h b/src/polyp/xmalloc.h index 2946011a..9d91d8dc 100644 --- a/src/polyp/xmalloc.h +++ b/src/polyp/xmalloc.h @@ -27,14 +27,29 @@ #include <limits.h> #include <assert.h> +/** \file + * Memory allocation functions. + */ + +/** Allocate the specified number of bytes, just like malloc() does. However, in case of OOM, terminate */ void* pa_xmalloc(size_t l); + +/** Same as pa_xmalloc(), but initialize allocated memory to 0 */ void *pa_xmalloc0(size_t l); + +/** The combination of pa_xmalloc() and realloc() */ void *pa_xrealloc(void *ptr, size_t size); -#define pa_xfree free +/** Free allocated memory */ +void pa_xfree(void *p); + +/** Duplicate the specified string, allocating memory with pa_xmalloc() */ char *pa_xstrdup(const char *s); + +/** Duplicate the specified string, but truncate after l characters */ char *pa_xstrndup(const char *s, size_t l); +/** Duplicate the specified memory block */ void* pa_xmemdup(const void *p, size_t l); /** Internal helper for pa_xnew() */ |