summaryrefslogtreecommitdiff
path: root/src/basic/alloc-util.h
diff options
context:
space:
mode:
authorMartin Pitt <martin.pitt@ubuntu.com>2016-10-17 07:12:20 +0200
committerGitHub <noreply@github.com>2016-10-17 07:12:20 +0200
commita7753693547233e4a1d6e10b1a8f6515a477f227 (patch)
tree3b20f53b931e953f4ed495bb10e90597f3670237 /src/basic/alloc-util.h
parent9e7727521ff2e751ee064716ab735016abf72025 (diff)
parent3b319885c4febb5f7ea9b5ab31c3395548ed6886 (diff)
Merge pull request #4391 from keszybz/treewide-macros
Use mfree more and add another function to simplify a common set&free pattern
Diffstat (limited to 'src/basic/alloc-util.h')
-rw-r--r--src/basic/alloc-util.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/basic/alloc-util.h b/src/basic/alloc-util.h
index ceeee519b7..a44dd473c1 100644
--- a/src/basic/alloc-util.h
+++ b/src/basic/alloc-util.h
@@ -43,6 +43,14 @@ static inline void *mfree(void *memory) {
return NULL;
}
+#define free_and_replace(a, b) \
+ ({ \
+ free(a); \
+ (a) = (b); \
+ (b) = NULL; \
+ 0; \
+ })
+
void* memdup(const void *p, size_t l) _alloc_(2);
static inline void freep(void *p) {