hush: nommu fix for function passing
No binary (build failed)
—
(log yok)
| @@ -5328,9 +5328,12 @@ static int parse_stream_dquoted(o_string *as_string, | |
| * within double quotes by preceding it with a backslash. | |
| */ | |
| if (strchr("$`\"\\", next) != NULL) { | |
| - | o_addqchr(dest, i_getch(input)); |
| + | ch = i_getch(input); |
| + | o_addqchr(dest, ch); |
| + | nommu_addchr(as_string, ch); |
| } else { | |
| o_addqchr(dest, '\\'); | |
| + | nommu_addchr(as_string, '\\'); |
| } | |
| goto again; | |
| } | |
| @@ -0,0 +1,2 @@ | |
| + | 24 |
| + | Done |
| @@ -0,0 +1,7 @@ | |
| + | func() { |
| + | eval "echo \"\${val_${1}}\"" |
| + | } |
| + | |
| + | val_x=24 |
| + | (func x) |
| + | echo Done |
| @@ -67,6 +67,7 @@ HERE | |
| f >/dev/null | |
| : $((i++)) | |
| done | |
| + | unset i l t |
| unset -f f | |
| memleak | |
| @@ -134,6 +135,7 @@ HERE | |
| f >/dev/null | |
| : $((i++)) | |
| done | |
| + | unset i l t |
| unset -f f | |