X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fcore%2Fshutdown.c;h=20cf526ba2716b34fe1a2fc9bde05a396b160502;hb=dfb05a1cf5479e6949d2413a633431c64d006ff2;hp=1e88b057903e11630a9fe390e602111748915f72;hpb=5a4bf02ff57e4dd3453f2b868c72fe45f60033a3;p=elogind.git diff --git a/src/core/shutdown.c b/src/core/shutdown.c index 1e88b0579..20cf526ba 100644 --- a/src/core/shutdown.c +++ b/src/core/shutdown.c @@ -207,7 +207,7 @@ int main(int argc, char *argv[]) { in_container = detect_container(NULL) > 0; - need_umount = true; + need_umount = !in_container; need_swapoff = !in_container; need_loop_detach = !in_container; need_dm_detach = !in_container; @@ -313,7 +313,7 @@ int main(int argc, char *argv[]) { access("/run/initramfs/shutdown", X_OK) == 0) { r = switch_root_initramfs(); if (r >= 0) { - arguments[0] = (char*) "/shutdown"; + argv[0] = (char*) "/shutdown"; setsid(); make_console_stdio(); @@ -321,7 +321,7 @@ int main(int argc, char *argv[]) { log_info("Successfully changed into root pivot.\n" "Returning to initrd..."); - execv("/shutdown", arguments); + execv("/shutdown", argv); log_error("Failed to execute shutdown binary: %m"); } else log_error("Failed to switch root to \"/run/initramfs\": %s", strerror(-r));