diff options
author | Denys Vlasenko | 2016-09-29 20:25:44 +0200 |
---|---|---|
committer | Denys Vlasenko | 2016-09-29 20:25:44 +0200 |
commit | 0448c55cc84294d330305066d8f0a16b56e04b8b (patch) | |
tree | 9264c74e05bf74f6072ca7a1f11d43e6b96978e0 | |
parent | 7a24e8ffebf60d5d5343f7207bb84e5766c2f902 (diff) | |
download | busybox-0448c55cc84294d330305066d8f0a16b56e04b8b.zip busybox-0448c55cc84294d330305066d8f0a16b56e04b8b.tar.gz |
hush: G.user_input_buf[] is needed only if line editing is enabled
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r-- | shell/hush.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/shell/hush.c b/shell/hush.c index 65d7d87..d0b5333 100644 --- a/shell/hush.c +++ b/shell/hush.c @@ -834,7 +834,9 @@ struct globals { int debug_indent; #endif struct sigaction sa; - char user_input_buf[ENABLE_FEATURE_EDITING ? CONFIG_FEATURE_EDITING_MAX_LEN : 2]; +#if ENABLE_FEATURE_EDITING + char user_input_buf[CONFIG_FEATURE_EDITING_MAX_LEN]; +#endif }; #define G (*ptr_to_globals) /* Not #defining name to G.name - this quickly gets unwieldy @@ -2174,7 +2176,10 @@ static int get_user_input(struct in_str *i) G.flag_SIGINT = 0; /* buglet: SIGINT will not make new prompt to appear _at once_, * only after <Enter>. (^C will work) */ - r = read_line_input(G.line_input_state, prompt_str, G.user_input_buf, CONFIG_FEATURE_EDITING_MAX_LEN-1, /*timeout*/ -1); + r = read_line_input(G.line_input_state, prompt_str, + G.user_input_buf, CONFIG_FEATURE_EDITING_MAX_LEN-1, + /*timeout*/ -1 + ); /* catch *SIGINT* etc (^C is handled by read_line_input) */ check_and_run_traps(); } while (r == 0 || G.flag_SIGINT); /* repeat if ^C or SIGINT */ |