X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=init%2Fpoweroff.c;h=8bb20e9bbb949ef5a1159896c9de61ffa777fc0d;hb=74bcd1642597109661543d25304c551a2e39acbc;hp=14dc2f5b96909f665abc32c8bad6c8da023d53dd;hpb=246cc6dddd3df2164e8a925ebd8e9a7bba379253;p=oweals%2Fbusybox.git diff --git a/init/poweroff.c b/init/poweroff.c index 14dc2f5b9..8bb20e9bb 100644 --- a/init/poweroff.c +++ b/init/poweroff.c @@ -21,11 +21,18 @@ * */ -#include "internal.h" +#include "busybox.h" #include extern int poweroff_main(int argc, char **argv) { +#ifdef BB_FEATURE_LINUXRC /* don't assume init's pid == 1 */ - exit(kill(findPidByName("init"), SIGUSR2)); + pid_t *pid = find_pid_by_name("init"); + if (!pid || *pid<=0) + error_msg_and_die("no process killed"); + return(kill(*pid, SIGUSR2)); +#else + return(kill(1, SIGUSR2)); +#endif }