hush: smaller code to set o_string to ""

function                                             old     new   delta
encode_then_expand_vararg                            399     398      -1
parse_stream                                        2753    2748      -5

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko 2018-07-18 15:48:53 +02:00
parent 4c201c00a3
commit 8b08d5a502

View File

@ -4997,8 +4997,7 @@ static struct pipe *parse_stream(char **pstring,
/* If very first arg is "" or '', ctx.word.data may end up NULL. /* If very first arg is "" or '', ctx.word.data may end up NULL.
* Preventing this: * Preventing this:
*/ */
o_addchr(&ctx.word, '\0'); ctx.word.data = xzalloc(1); /* start as "", not as NULL */
ctx.word.length = 0;
/* We used to separate words on $IFS here. This was wrong. /* We used to separate words on $IFS here. This was wrong.
* $IFS is used only for word splitting when $var is expanded, * $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
*/ */
setup_string_in_str(&input, str); setup_string_in_str(&input, str);
o_addchr(&dest, '\0'); dest.data = xzalloc(1); /* start as "", not as NULL */
dest.length = 0;
exp_str = NULL; exp_str = NULL;
for (;;) { for (;;) {