
On Fri, Jan 29, 2021 at 17:16:14 +0100, Tim Wiederhake wrote:
Preparation for later conversion to g_auto* memory handling.
Signed-off-by: Tim Wiederhake <twiederh@redhat.com> --- tests/commandhelper.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/tests/commandhelper.c b/tests/commandhelper.c index 05e3879688..2be121ce2c 100644 --- a/tests/commandhelper.c +++ b/tests/commandhelper.c @@ -61,7 +61,7 @@ int main(int argc, char **argv) { ssize_t got;
if (!log) - return ret; + goto cleanup;
for (i = 1; i < argc; i++) { fprintf(log, "ARG:%s\n", argv[i]); @@ -79,7 +79,7 @@ int main(int argc, char **argv) { }
if (!(newenv = malloc(sizeof(*newenv) * n))) - abort(); + goto cleanup;
Any reason for not converting this malloc to g_new directly? you get rid of abort()/cleanup entirely. Especially since the patches at the end of the series switch to g_auto(ptr). If there's a strong reason against using glibs allocators, in such case the cleanups shouldn't be added either.
for (i = 0; i < n; i++) { newenv[i] = environ[i]; @@ -222,8 +222,10 @@ int main(int argc, char **argv) { cleanup: for (i = 0; i < G_N_ELEMENTS(buffers); i++) free(buffers[i]); - fclose(log); - free(newenv); + if (newenv) + free(newenv); + if (log) + fclose(log); return ret; }
-- 2.26.2