summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Henningsson <david.henningsson@canonical.com>2015-03-25 10:13:13 +0100
committerDavid Henningsson <david.henningsson@canonical.com>2015-03-30 10:52:30 +0200
commitd0e8b0fe077b2d59e111c57ed5ed75b7a7d3e92d (patch)
tree4a8a616b4151255ee4fdf630bb453627b1e72fa1
parentc36e191ce5d38173424c3db9ba06638fd6b8408e (diff)
memblock: Change pa_memblock_new_malloced to an inline function
To avoid the macro trap: I call pa_memblock_new_malloced with "pa_xmemdup" as data parameter, and that would expand to *two* calls to pa_xmemdup in case that remains a macro, which is clearly not intended. Signed-off-by: David Henningsson <david.henningsson@canonical.com>
-rw-r--r--src/pulsecore/memblock.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/pulsecore/memblock.h b/src/pulsecore/memblock.h
index dbea21309..4faef756d 100644
--- a/src/pulsecore/memblock.h
+++ b/src/pulsecore/memblock.h
@@ -27,6 +27,7 @@ typedef struct pa_memblock pa_memblock;
#include <inttypes.h>
#include <pulse/def.h>
+#include <pulse/xmalloc.h>
#include <pulsecore/atomic.h>
#include <pulsecore/memchunk.h>
@@ -86,7 +87,9 @@ pa_memblock *pa_memblock_new_pool(pa_mempool *, size_t length);
pa_memblock *pa_memblock_new_user(pa_mempool *, void *data, size_t length, pa_free_cb_t free_cb, void *free_cb_data, bool read_only);
/* A special case of pa_memblock_new_user: take a memory buffer previously allocated with pa_xmalloc() */
-#define pa_memblock_new_malloced(p,data,length) pa_memblock_new_user(p, data, length, pa_xfree, data, 0)
+static inline pa_memblock *pa_memblock_new_malloced(pa_mempool *p, void *data, size_t length) {
+ return pa_memblock_new_user(p, data, length, pa_xfree, data, 0);
+}
/* Allocate a new memory block of type PA_MEMBLOCK_FIXED */
pa_memblock *pa_memblock_new_fixed(pa_mempool *, void *data, size_t length, bool read_only);