]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
systemctl: use FOREACH_ARRAY and FOREACH_ELEMENT more
authorMike Yuan <me@yhndnzj.com>
Tue, 16 Apr 2024 07:08:14 +0000 (15:08 +0800)
committerMike Yuan <me@yhndnzj.com>
Fri, 19 Apr 2024 02:08:35 +0000 (10:08 +0800)
src/systemctl/systemctl-start-unit.c
src/systemctl/systemctl-util.c

index de8873caaf56204af1d561d6c8d80f57c71544d2..c1574f019e2e43c2acf7c97dafc3971b5745881a 100644 (file)
@@ -35,20 +35,24 @@ static const struct {
         { "force-reload",          "ReloadOrTryRestartUnit", "reload-or-try-restart" }, /* legacy alias */
 };
 
-static const char *verb_to_method(const char *verb) {
-       for (size_t i = 0; i < ELEMENTSOF(unit_actions); i++)
-                if (streq_ptr(unit_actions[i].verb, verb))
-                        return unit_actions[i].method;
+static const char* verb_to_method(const char *verb) {
+        assert(verb);
 
-       return "StartUnit";
+        FOREACH_ELEMENT(i, unit_actions)
+                if (streq(i->verb, verb))
+                        return i->method;
+
+        return "StartUnit";
 }
 
-static const char *verb_to_job_type(const char *verb) {
-       for (size_t i = 0; i < ELEMENTSOF(unit_actions); i++)
-                if (streq_ptr(unit_actions[i].verb, verb))
-                        return unit_actions[i].job_type;
+static const char* verb_to_job_type(const char *verb) {
+        assert(verb);
+
+        FOREACH_ELEMENT(i, unit_actions)
+                if (streq(i->verb, verb))
+                        return i->job_type;
 
-       return "start";
+        return "start";
 }
 
 static int start_unit_one(
@@ -240,6 +244,8 @@ const struct action_metadata action_table[_ACTION_MAX] = {
 };
 
 enum action verb_to_action(const char *verb) {
+        assert(verb);
+
         for (enum action i = 0; i < _ACTION_MAX; i++)
                 if (streq_ptr(action_table[i].verb, verb))
                         return i;
index 75c6c547f7ba51a80f8e0363ccd9673d6fe97ba7..2482b7ccb2460b93164d1b55c87de5a56ca7ccdb 100644 (file)
@@ -64,8 +64,8 @@ int acquire_bus(BusFocus focus, sd_bus **ret) {
 }
 
 void release_busses(void) {
-        for (BusFocus w = 0; w < _BUS_FOCUS_MAX; w++)
-                buses[w] = sd_bus_flush_close_unref(buses[w]);
+        FOREACH_ARRAY(w, buses, _BUS_FOCUS_MAX)
+                *w = sd_bus_flush_close_unref(*w);
 }
 
 void ask_password_agent_open_maybe(void) {