ash: fix ifs cleanup on error paths

Patch by Alex Gorinson <algore3698@gmail.com>

function                                             old     new   delta
evalvar                                              477     495     +18
varvalue                                             603     618     +15
subevalvar                                          1557    1572     +15
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/0 up/down: 48/0)               Total: 48 bytes

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko
2022-08-02 11:13:44 +02:00
parent 5479c435fd
commit 1c54552842
5 changed files with 22 additions and 0 deletions

View File

@@ -0,0 +1,2 @@
hush: D: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
Y

View File

@@ -0,0 +1,8 @@
# The bug was only happening with <<REDIR;CMD form below:
M='AAAAAAAAAAAAAAAAA'
fff(){
date <<000; echo Y
${D?$M$M$M$M$M$M}
000
}
fff