diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2013-04-11 18:58:45 -0400 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2013-04-12 19:26:12 -0400 |
commit | 2244a6fbe6012924e74c7f2197512a55e9238b05 (patch) | |
tree | 4ed9c206c3bcffc0fcd4d467f3f4b914b34cac5b /src | |
parent | 2da833ac2d91abc6b4e3fa613b7eebbaba76144a (diff) |
util: add wrapper for realloc to avoid specyfing type
Diffstat (limited to 'src')
-rw-r--r-- | src/libsystemd-bus/bus-match.c | 5 | ||||
-rw-r--r-- | src/shared/util.h | 2 |
2 files changed, 4 insertions, 3 deletions
diff --git a/src/libsystemd-bus/bus-match.c b/src/libsystemd-bus/bus-match.c index fed25c1a2a..37e7cc71f3 100644 --- a/src/libsystemd-bus/bus-match.c +++ b/src/libsystemd-bus/bus-match.c @@ -725,7 +725,7 @@ static int parse_match( } } - if (!greedy_realloc((void**) &value, &value_allocated, j + 2)) { + if (!GREEDY_REALLOC(value, value_allocated, j + 2)) { r = -ENOMEM; goto fail; } @@ -744,8 +744,7 @@ static int parse_match( } else u = 0; - if (!greedy_realloc((void**) &components, &components_allocated, - (n_components + 1) * sizeof(struct match_component))) { + if (!GREEDY_REALLOC(components, components_allocated, n_components + 1)) { r = -ENOMEM; goto fail; } diff --git a/src/shared/util.h b/src/shared/util.h index a8e962ea50..99ec0a39bd 100644 --- a/src/shared/util.h +++ b/src/shared/util.h @@ -618,6 +618,8 @@ char *strextend(char **x, ...); char *strrep(const char *s, unsigned n); void* greedy_realloc(void **p, size_t *allocated, size_t need); +#define GREEDY_REALLOC(array, allocated, need) \ + greedy_realloc((void**) &(array), &(allocated), (sizeof *array) * (need)) static inline void _reset_errno_(int *saved_errno) { errno = *saved_errno; |