aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--shell/hush.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/shell/hush.c b/shell/hush.c
index 7da8f334c..534fabbd0 100644
--- a/shell/hush.c
+++ b/shell/hush.c
@@ -4997,8 +4997,7 @@ static struct pipe *parse_stream(char **pstring,
4997 /* If very first arg is "" or '', ctx.word.data may end up NULL. 4997 /* If very first arg is "" or '', ctx.word.data may end up NULL.
4998 * Preventing this: 4998 * Preventing this:
4999 */ 4999 */
5000 o_addchr(&ctx.word, '\0'); 5000 ctx.word.data = xzalloc(1); /* start as "", not as NULL */
5001 ctx.word.length = 0;
5002 5001
5003 /* We used to separate words on $IFS here. This was wrong. 5002 /* We used to separate words on $IFS here. This was wrong.
5004 * $IFS is used only for word splitting when $var is expanded, 5003 * $IFS is used only for word splitting when $var is expanded,
@@ -5795,8 +5794,7 @@ static char *encode_then_expand_vararg(const char *str, int handle_squotes, int
5795 */ 5794 */
5796 5795
5797 setup_string_in_str(&input, str); 5796 setup_string_in_str(&input, str);
5798 o_addchr(&dest, '\0'); 5797 dest.data = xzalloc(1); /* start as "", not as NULL */
5799 dest.length = 0;
5800 exp_str = NULL; 5798 exp_str = NULL;
5801 5799
5802 for (;;) { 5800 for (;;) {