]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
shutdown: explicitly initialize static variables, make arg_verb const
authorMike Yuan <me@yhndnzj.com>
Wed, 15 May 2024 15:26:35 +0000 (23:26 +0800)
committerMike Yuan <me@yhndnzj.com>
Tue, 21 May 2024 03:39:28 +0000 (11:39 +0800)
src/shutdown/shutdown.c

index 67f44e16e9cee86b65c123e8d63bc39b19b2ef1a..b1db28e785e232c5089342cbb6fc9556dc7e5315 100644 (file)
@@ -52,8 +52,8 @@
 #define SYNC_PROGRESS_ATTEMPTS 3
 #define SYNC_TIMEOUT_USEC (10*USEC_PER_SEC)
 
-static char* arg_verb;
-static uint8_t arg_exit_code;
+static const char *arg_verb = NULL;
+static uint8_t arg_exit_code = 0;
 static usec_t arg_timeout = DEFAULT_TIMEOUT_USEC;
 
 static int parse_argv(int argc, char *argv[]) {
@@ -146,7 +146,7 @@ static int parse_argv(int argc, char *argv[]) {
                         if (!arg_verb)
                                 arg_verb = optarg;
                         else
-                                log_error("Excess arguments, ignoring");
+                                log_warning("Got extraneous arguments, ignoring.");
                         break;
 
                 case '?':
@@ -157,8 +157,7 @@ static int parse_argv(int argc, char *argv[]) {
                 }
 
         if (!arg_verb)
-                return log_error_errno(SYNTHETIC_ERRNO(EINVAL),
-                                       "Verb argument missing.");
+                return log_error_errno(SYNTHETIC_ERRNO(EINVAL), "Verb argument missing.");
 
         return 0;
 }
@@ -565,7 +564,7 @@ int main(int argc, char *argv[]) {
         watchdog_free_device();
 
         arguments[0] = NULL; /* Filled in by execute_directories(), when needed */
-        arguments[1] = arg_verb;
+        arguments[1] = (char*) arg_verb;
         arguments[2] = NULL;
         (void) execute_directories(dirs, DEFAULT_TIMEOUT_USEC, NULL, NULL, arguments, NULL, EXEC_DIR_PARALLEL | EXEC_DIR_IGNORE_ERRORS);