hush: use configured max line length, not BUFSIZE from libc

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko 2009-10-19 16:34:39 +02:00
parent 36df04837a
commit aaa22d2493

View File

@ -556,7 +556,7 @@ struct globals {
unsigned long memleak_value; unsigned long memleak_value;
int debug_indent; int debug_indent;
#endif #endif
char user_input_buf[ENABLE_FEATURE_EDITING ? BUFSIZ : 2]; char user_input_buf[ENABLE_FEATURE_EDITING ? CONFIG_FEATURE_EDITING_MAX_LEN : 2];
}; };
#define G (*ptr_to_globals) #define G (*ptr_to_globals)
/* Not #defining name to G.name - this quickly gets unwieldy /* Not #defining name to G.name - this quickly gets unwieldy
@ -1666,7 +1666,7 @@ static void get_user_input(struct in_str *i)
G.flag_SIGINT = 0; G.flag_SIGINT = 0;
/* buglet: SIGINT will not make new prompt to appear _at once_, /* buglet: SIGINT will not make new prompt to appear _at once_,
* only after <Enter>. (^C will work) */ * only after <Enter>. (^C will work) */
r = read_line_input(prompt_str, G.user_input_buf, BUFSIZ-1, G.line_input_state); r = read_line_input(prompt_str, G.user_input_buf, CONFIG_FEATURE_EDITING_MAX_LEN-1, G.line_input_state);
/* catch *SIGINT* etc (^C is handled by read_line_input) */ /* catch *SIGINT* etc (^C is handled by read_line_input) */
check_and_run_traps(0); check_and_run_traps(0);
} while (r == 0 || G.flag_SIGINT); /* repeat if ^C or SIGINT */ } while (r == 0 || G.flag_SIGINT); /* repeat if ^C or SIGINT */