]> err.no Git - systemd/commitdiff
job: only jobs on the runqueue can be run
authorMichal Schmidt <mschmidt@redhat.com>
Sat, 12 May 2012 19:06:27 +0000 (21:06 +0200)
committerMichal Schmidt <mschmidt@redhat.com>
Mon, 14 May 2012 12:29:53 +0000 (14:29 +0200)
src/core/job.c

index 301d83a9dc1b51fbc1b1a01916c0e64f18c00c0e..90091c298f343f332596f583452f1404664b7037 100644 (file)
@@ -470,11 +470,10 @@ int job_run_and_invalidate(Job *j) {
         assert(j);
         assert(j->installed);
         assert(j->type < _JOB_TYPE_MAX_IN_TRANSACTION);
+        assert(j->in_run_queue);
 
-        if (j->in_run_queue) {
-                LIST_REMOVE(Job, run_queue, j->manager->run_queue, j);
-                j->in_run_queue = false;
-        }
+        LIST_REMOVE(Job, run_queue, j->manager->run_queue, j);
+        j->in_run_queue = false;
 
         if (j->state != JOB_WAITING)
                 return 0;