hush: fix thinko in error msg

This commit is contained in:
Denis Vlasenko 2009-04-18 13:05:10 +00:00
parent 38e626df4d
commit 6008d8a3cc

View File

@ -6430,7 +6430,6 @@ static int builtin_export(char **argv)
static int builtin_trap(char **argv) static int builtin_trap(char **argv)
{ {
int i;
int sig; int sig;
char *new_cmd; char *new_cmd;
@ -6439,6 +6438,7 @@ static int builtin_trap(char **argv)
argv++; argv++;
if (!*argv) { if (!*argv) {
int i;
/* No args: print all trapped */ /* No args: print all trapped */
for (i = 0; i < NSIG; ++i) { for (i = 0; i < NSIG; ++i) {
if (G.traps[i]) { if (G.traps[i]) {
@ -6452,7 +6452,6 @@ static int builtin_trap(char **argv)
} }
new_cmd = NULL; new_cmd = NULL;
i = 0;
/* If first arg is a number: reset all specified signals */ /* If first arg is a number: reset all specified signals */
sig = bb_strtou(*argv, NULL, 10); sig = bb_strtou(*argv, NULL, 10);
if (errno == 0) { if (errno == 0) {
@ -6464,7 +6463,7 @@ static int builtin_trap(char **argv)
if (sig < 0 || sig >= NSIG) { if (sig < 0 || sig >= NSIG) {
ret = EXIT_FAILURE; ret = EXIT_FAILURE;
/* Mimic bash message exactly */ /* Mimic bash message exactly */
bb_perror_msg("trap: %s: invalid signal specification", argv[i]); bb_perror_msg("trap: %s: invalid signal specification", argv[-1]);
continue; continue;
} }
@ -6488,8 +6487,8 @@ static int builtin_trap(char **argv)
continue; continue;
sigdelset(&G.blocked_set, sig); sigdelset(&G.blocked_set, sig);
} }
sigprocmask(SIG_SETMASK, &G.blocked_set, NULL);
} }
sigprocmask(SIG_SETMASK, &G.blocked_set, NULL);
return ret; return ret;
} }