hush: fix var_LINENO3.tests failure
function old new delta parse_and_run_string 40 62 +22 i_getch 105 102 -3 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/1 up/down: 22/-3) Total: 19 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
parent
bcff3a7b5a
commit
574b9c446d
10
shell/hush.c
10
shell/hush.c
@ -2753,6 +2753,12 @@ static int i_getch(struct in_str *i)
|
|||||||
if (ch != '\0') {
|
if (ch != '\0') {
|
||||||
i->p++;
|
i->p++;
|
||||||
i->last_char = ch;
|
i->last_char = ch;
|
||||||
|
#if ENABLE_HUSH_LINENO_VAR
|
||||||
|
if (ch == '\n') {
|
||||||
|
G.parse_lineno++;
|
||||||
|
debug_printf_parse("G.parse_lineno++ = %u\n", G.parse_lineno);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
return ch;
|
return ch;
|
||||||
}
|
}
|
||||||
return EOF;
|
return EOF;
|
||||||
@ -7540,11 +7546,11 @@ static void parse_and_run_stream(struct in_str *inp, int end_trigger)
|
|||||||
static void parse_and_run_string(const char *s)
|
static void parse_and_run_string(const char *s)
|
||||||
{
|
{
|
||||||
struct in_str input;
|
struct in_str input;
|
||||||
//IF_HUSH_LINENO_VAR(unsigned sv = G.parse_lineno;)
|
IF_HUSH_LINENO_VAR(unsigned sv = G.parse_lineno;)
|
||||||
|
|
||||||
setup_string_in_str(&input, s);
|
setup_string_in_str(&input, s);
|
||||||
parse_and_run_stream(&input, '\0');
|
parse_and_run_stream(&input, '\0');
|
||||||
//IF_HUSH_LINENO_VAR(G.parse_lineno = sv;)
|
IF_HUSH_LINENO_VAR(G.parse_lineno = sv;)
|
||||||
}
|
}
|
||||||
|
|
||||||
static void parse_and_run_file(HFILE *fp)
|
static void parse_and_run_file(HFILE *fp)
|
||||||
|
Loading…
Reference in New Issue
Block a user