Applied patch from Gennady Feldman to use single-thread instead of forking.
[oweals/busybox.git] / halt.c
diff --git a/halt.c b/halt.c
index ecc6e8f3014afe5e06edac0bfc2aef920a60c5f1..e875d04f0cb8cdee48bfc9d434e97587738ccfce 100644 (file)
--- a/halt.c
+++ b/halt.c
@@ -1,3 +1,4 @@
+/* vi: set sw=4 ts=4: */
 /*
  * Mini halt implementation for busybox
  *
  *
  */
 
-#include "internal.h"
+#include "busybox.h"
 #include <signal.h>
 
-extern int
-halt_main(int argc, char ** argv)
+extern int halt_main(int argc, char **argv)
 {
-    exit( kill(1, SIGUSR1));
+#ifdef BB_FEATURE_LINUXRC
+       /* don't assume init's pid == 1 */
+       return(kill(*(find_pid_by_name("init")), SIGUSR1));
+#else
+       return(kill(1, SIGUSR1));
+#endif
 }
-