aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2020-12-24 00:22:24 +0100
committerDenys Vlasenko <vda.linux@googlemail.com>2020-12-24 00:22:24 +0100
commit51a471d05d637e928ed26b0240645ff3e51ef396 (patch)
tree913ee15f3b32bb2029e9d1d3c39c68a13147dfd7
parent521220ed1aa63e53e2f30042ae8f00f683e2254d (diff)
downloadbusybox-51a471d05d637e928ed26b0240645ff3e51ef396.tar.gz
ash: change "clear ungetc counter on syntax errors" fix to match dash
function old new delta ash_main 1203 1210 +7 raise_exception 39 26 -13 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/1 up/down: 7/-13) Total: -6 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r--shell/ash.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/shell/ash.c b/shell/ash.c
index aa2a93bca..f16d7fb6a 100644
--- a/shell/ash.c
+++ b/shell/ash.c
@@ -636,8 +636,6 @@ raise_exception(int e)
abort();
#endif
INT_OFF;
- /* Prevent this: ";l" -> syntax error, then "s" -> runs "ls" */
- g_parsefile->unget = 0;
exception_type = e;
longjmp(exception_handler->loc, 1);
}
@@ -14161,6 +14159,7 @@ reset(void)
/* from input.c: */
g_parsefile->left_in_buffer = 0;
g_parsefile->left_in_line = 0; /* clear input buffer */
+ g_parsefile->unget = 0;
popallfiles();
/* from var.c: */