diff options
author | Leah Neukirchen <leah@vuxu.org> | 2023-12-25 02:40:41 +0100 |
---|---|---|
committer | Leah Neukirchen <leah@vuxu.org> | 2023-12-25 02:41:33 +0100 |
commit | d8412bf0b2ead0fdcc32815362463c577e0b8c0e (patch) | |
tree | c14a75f1998e95b31fa0cc2818c9fd4f8eb1ae1d | |
parent | 8d818d9daccaf12335943f886af9e7f6184af5ad (diff) | |
download | nitro-d8412bf0b2ead0fdcc32815362463c577e0b8c0e.tar.gz nitro-d8412bf0b2ead0fdcc32815362463c577e0b8c0e.tar.xz nitro-d8412bf0b2ead0fdcc32815362463c577e0b8c0e.zip |
message reboot/shutdown only once
-rw-r--r-- | nitro.c | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/nitro.c b/nitro.c index bc6b14e..ad437a8 100644 --- a/nitro.c +++ b/nitro.c @@ -712,10 +712,18 @@ own_console() void do_shutdown(int state) { - if (state == GLBL_WANT_REBOOT) - dprintf(2, "- nitro: rebooting\n"); - else if (state == GLBL_WANT_SHUTDOWN) - dprintf(2, "- nitro: shutting down\n"); + if (global_state == GLBL_UP) { + if (state == GLBL_WANT_REBOOT) + dprintf(2, "- nitro: rebooting\n"); + else if (state == GLBL_WANT_SHUTDOWN) + dprintf(2, "- nitro: shutting down\n"); + + if (pid1) + own_console(); +#ifdef __linux__ + reboot(RB_ENABLE_CAD); +#endif + } global_state = state; for (int i = 0; i < max_service; i++) { @@ -726,13 +734,6 @@ do_shutdown(int state) process_step(i, EVNT_WANT_DOWN); } - - if (pid1) - own_console(); - -#ifdef __linux__ - reboot(RB_ENABLE_CAD); -#endif } void |