diff --git a/guest/init.c b/guest/init.c index ece48fd..8c49a03 100644 --- a/guest/init.c +++ b/guest/init.c @@ -61,7 +61,11 @@ int main(int argc, char *argv[]) else run_process("/bin/sh"); } else { - waitpid(child, &status, 0); + pid_t corpse; + + do { + corpse = waitpid(-1, &status, 0); + } while (corpse != child); } reboot(LINUX_REBOOT_CMD_RESTART);