From: Thomas Hindoe Paaboel Andersen Date: Wed, 3 Dec 2014 23:14:37 +0000 (+0100) Subject: systemctl: fix a leak X-Git-Tag: v218~129 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=652212b0c2b60b9ef9b2e24eae82401f880fa21a;hp=f08c4c08c7c2ce0fdfb4cf49642b00fbfb15185f systemctl: fix a leak --- diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c index 74af77279..c60bab4b6 100644 --- a/src/systemctl/systemctl.c +++ b/src/systemctl/systemctl.c @@ -5753,8 +5753,11 @@ static int create_edit_temp_file(const char *new_path, const char *original_path return log_oom(); r = mkdir_parents(new_path, 0755); - if (r < 0) - return log_error_errno(r, "Failed to create directories for %s: %m", new_path); + if (r < 0) { + log_error_errno(r, "Failed to create directories for %s: %m", new_path); + free(t); + return r; + } r = copy_file(original_path, t, 0, 0644); if (r == -ENOENT) {