kill: fix recent breakage of vda, also make code smaller by 21 bytes.

This commit is contained in:
Denis Vlasenko 2007-05-06 22:48:55 +00:00
parent 21f0d4c55e
commit 02f47e9f81

View File

@ -1,6 +1,6 @@
/* vi: set sw=4 ts=4: */ /* vi: set sw=4 ts=4: */
/* /*
* Mini kill/killall implementation for busybox * Mini kill/killall[5] implementation for busybox
* *
* Copyright (C) 1995, 1996 by Bruce Perens <bruce@pixar.com>. * Copyright (C) 1995, 1996 by Bruce Perens <bruce@pixar.com>.
* Copyright (C) 1999-2004 by Erik Andersen <andersen@codepoet.org> * Copyright (C) 1999-2004 by Erik Andersen <andersen@codepoet.org>
@ -30,10 +30,17 @@ int kill_main(int argc, char **argv)
char *arg; char *arg;
pid_t pid; pid_t pid;
int signo = SIGTERM, errors = 0, quiet = 0; int signo = SIGTERM, errors = 0, quiet = 0;
const int killall = (ENABLE_KILLALL && argv[0][4] == 'a' #if !ENABLE_KILLALL && !ENABLE_KILLALL5
&& (!ENABLE_KILLALL5 || argv[0][7] != '5')); #define killall 0
const int killall5 = (ENABLE_KILLALL5 && argv[0][4] == 'a' #define killall5 0
&& (!ENABLE_KILLALL || argv[0][7] == '5')); #else
/* How to determine who we are? find 3rd char from the end:
* kill, killall, killall5
* ^i ^a ^l */
const char char3 = argv[0][strlen(argv[0]) - 3];
#define killall (ENABLE_KILLALL && char3 == 'a')
#define killall5 (ENABLE_KILLALL5 && char3 == 'l')
#endif
/* Parse any options */ /* Parse any options */
argc--; argc--;