chiark / gitweb /
manager: print p and then free it
[elogind.git] / src / core / manager.c
index 5527e9d429299fd6c49912c0f6a50bd7263dcb23..d976581c96bfa897bbc4cb60fd6d83e27b37ada3 100644 (file)
@@ -678,6 +678,9 @@ static void manager_clear_jobs_and_units(Manager *m) {
 
         assert(hashmap_isempty(m->jobs));
         assert(hashmap_isempty(m->units));
+
+        m->n_on_console = 0;
+        m->n_running_jobs = 0;
 }
 
 void manager_free(Manager *m) {
@@ -2476,9 +2479,9 @@ static int create_generator_dir(Manager *m, char **generator, const char *name)
                         return log_oom();
 
                 if (!mkdtemp(p)) {
-                        free(p);
                         log_error("Failed to create generator directory %s: %m",
                                   p);
+                        free(p);
                         return -errno;
                 }
         }