X-Git-Url: http://git.ozlabs.org/?p=ccan;a=blobdiff_plain;f=ccan%2Fpipecmd%2Fpipecmd.c;h=e8aec15b4e7f62993489de618a445439ac06c8c7;hp=42c6689445876e5b832520bd55a1e1aecf288c43;hb=f14e4e974f7641262de3fe10c09c984c51a69dd7;hpb=e81b527384ad5331a9cd35a9f21bc8ac6b16d137 diff --git a/ccan/pipecmd/pipecmd.c b/ccan/pipecmd/pipecmd.c index 42c66894..e8aec15b 100644 --- a/ccan/pipecmd/pipecmd.c +++ b/ccan/pipecmd/pipecmd.c @@ -16,9 +16,12 @@ static char **gather_args(const char *arg0, va_list ap) arr[0] = (char *)arg0; while ((arr[n++] = va_arg(ap, char *)) != NULL) { - arr = realloc(arr, sizeof(char *) * (n + 1)); - if (!arr) + char **narr = realloc(arr, sizeof(char *) * (n + 1)); + if (!narr) { + free(arr); return NULL; + } + arr = narr; } return arr; }