From: Lennart Poettering Date: Wed, 21 Feb 2018 17:50:34 +0000 (+0100) Subject: shutdown: let's not use exit() needlessly X-Git-Tag: v238~71^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F8243%2Fhead;p=thirdparty%2Fsystemd.git shutdown: let's not use exit() needlessly Generally we prefer 'return' from main() over exit() so that automatic cleanups and such work correct. Let's do that in shutdown.c too, becuase there's not really any reason not to. With this we are pretty good in consistently using return from main() rather than exit() all across the codebase. Yay! --- diff --git a/src/core/shutdown.c b/src/core/shutdown.c index de689aea311..58c9a9de79e 100644 --- a/src/core/shutdown.c +++ b/src/core/shutdown.c @@ -485,12 +485,9 @@ int main(int argc, char *argv[]) { if (streq(arg_verb, "exit")) { if (in_container) - exit(arg_exit_code); - else { - /* We cannot exit() on the host, fallback on another - * method. */ - cmd = RB_POWER_OFF; - } + return arg_exit_code; + + cmd = RB_POWER_OFF; /* We cannot exit() on the host, fallback on another method. */ } switch (cmd) { @@ -542,7 +539,7 @@ int main(int argc, char *argv[]) { * CAP_SYS_BOOT just exit, this will kill our * container for good. */ log_info("Exiting container."); - exit(EXIT_SUCCESS); + return EXIT_SUCCESS; } r = log_error_errno(errno, "Failed to invoke reboot(): %m");