]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
core/unit: modernize unit_process_job() a bit 39753/head
authorMike Yuan <me@yhndnzj.com>
Sun, 16 Nov 2025 14:33:53 +0000 (15:33 +0100)
committerMike Yuan <me@yhndnzj.com>
Mon, 17 Nov 2025 18:30:00 +0000 (19:30 +0100)
* Inline one condition
* Annotate boolean args with names

src/core/unit.c

index 8a406a93341cdaff08878cde545bbb565fcf5b3b..ddae43a673f712dfa342d9d7154f5ef386b538f4 100644 (file)
@@ -2607,7 +2607,6 @@ static void unit_emit_audit_stop(Unit *u, UnitActiveState state) {
 
 static bool unit_process_job(Job *j, UnitActiveState ns, bool reload_success) {
         bool unexpected = false;
-        JobResult result;
 
         assert(j);
         assert(j->installed);
@@ -2626,18 +2625,12 @@ static bool unit_process_job(Job *j, UnitActiveState ns, bool reload_success) {
         case JOB_VERIFY_ACTIVE:
 
                 if (UNIT_IS_ACTIVE_OR_RELOADING(ns))
-                        job_finish_and_invalidate(j, JOB_DONE, true, false);
+                        job_finish_and_invalidate(j, JOB_DONE, /* recursive = */ true, /* already = */ false);
                 else if (j->state == JOB_RUNNING && ns != UNIT_ACTIVATING) {
                         unexpected = true;
 
-                        if (UNIT_IS_INACTIVE_OR_FAILED(ns)) {
-                                if (ns == UNIT_FAILED)
-                                        result = JOB_FAILED;
-                                else
-                                        result = JOB_DONE;
-
-                                job_finish_and_invalidate(j, result, true, false);
-                        }
+                        if (UNIT_IS_INACTIVE_OR_FAILED(ns))
+                                job_finish_and_invalidate(j, ns == UNIT_FAILED ? JOB_FAILED : JOB_DONE, /* recursive = */ true, /* already = */ false);
                 }
 
                 break;
@@ -2646,10 +2639,10 @@ static bool unit_process_job(Job *j, UnitActiveState ns, bool reload_success) {
 
                 if (j->state == JOB_RUNNING) {
                         if (ns == UNIT_ACTIVE)
-                                job_finish_and_invalidate(j, reload_success ? JOB_DONE : JOB_FAILED, true, false);
+                                job_finish_and_invalidate(j, reload_success ? JOB_DONE : JOB_FAILED, /* recursive = */ true, /* already = */ false);
                         else if (!IN_SET(ns, UNIT_ACTIVATING, UNIT_RELOADING, UNIT_REFRESHING)) {
                                 unexpected = true;
-                                job_finish_and_invalidate(j, reload_success ? JOB_CANCELED : JOB_FAILED, true, false);
+                                job_finish_and_invalidate(j, reload_success ? JOB_CANCELED : JOB_FAILED, /* recursive = */ true, /* already = */ false);
                         }
                 }
 
@@ -2659,10 +2652,10 @@ static bool unit_process_job(Job *j, UnitActiveState ns, bool reload_success) {
         case JOB_RESTART:
 
                 if (UNIT_IS_INACTIVE_OR_FAILED(ns))
-                        job_finish_and_invalidate(j, JOB_DONE, true, false);
+                        job_finish_and_invalidate(j, JOB_DONE, /* recursive = */ true, /* already = */ false);
                 else if (j->state == JOB_RUNNING && ns != UNIT_DEACTIVATING) {
                         unexpected = true;
-                        job_finish_and_invalidate(j, JOB_FAILED, true, false);
+                        job_finish_and_invalidate(j, JOB_FAILED, /* recursive = */ true, /* already = */ false);
                 }
 
                 break;