chiark / gitweb /
timer: timer can be a transient unit
[elogind.git] / src / systemctl / systemctl.c
index 74af7727941f94fdf48a34a2c97ccf0286643c64..d356686f78e482c23e3717c47d040e8212a4d0dd 100644 (file)
@@ -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) {