chiark / gitweb /
core: fix running jobs counters after reload/reexec
[elogind.git] / src / core / manager.c
index ec12a753719b1bc9dff6fef659ea3463d3f51ebc..42423985bc8fe11ee61950beaa317660b3d4a08e 100644 (file)
@@ -269,6 +269,9 @@ static void manager_print_jobs_in_progress(Manager *m) {
                 if (j->state == JOB_RUNNING && counter++ == print_nr)
                         break;
 
+       if (!j)
+               return;
+
         cylon_pos = m->jobs_in_progress_iteration % 14;
         if (cylon_pos >= 8)
                 cylon_pos = 14 - cylon_pos;
@@ -675,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) {