X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fsystemctl%2Fsystemctl.c;h=d356686f78e482c23e3717c47d040e8212a4d0dd;hb=8b5e2af10830d55b2032e6c79d0cd1f959bb5b7f;hp=74af7727941f94fdf48a34a2c97ccf0286643c64;hpb=d2dc52dbc45051faa6356213a537081084e9dda4;p=elogind.git diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c index 74af77279..d356686f7 100644 --- a/src/systemctl/systemctl.c +++ b/src/systemctl/systemctl.c @@ -73,7 +73,6 @@ #include "bus-message.h" #include "bus-error.h" #include "bus-errors.h" -#include "copy.h" #include "mkdir.h" static char **arg_types = NULL; @@ -5753,8 +5752,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) {