mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-10-28 05:00:59 +01:00
users/22319: ${ary1:^ary2} should not change isarr state of expansion of ary1
Unless ary1 is made from a scalar, semantics of (@) in double quotes is lost.
This commit is contained in:
parent
d0f7a3b2d6
commit
c4dba4f2e6
2 changed files with 10 additions and 2 deletions
|
|
@ -3066,7 +3066,10 @@ paramsubst(LinkList l, LinkNode n, char **str, int qt, int pf_flags,
|
|||
if (sval)
|
||||
zip = hmkarray(sval);
|
||||
}
|
||||
if (!isarr) aval = mkarray(val);
|
||||
if (!isarr) {
|
||||
aval = mkarray(val);
|
||||
isarr = 1;
|
||||
}
|
||||
if (zip) {
|
||||
char **out;
|
||||
int alen, ziplen, outlen, i = 0;
|
||||
|
|
@ -3089,7 +3092,6 @@ paramsubst(LinkList l, LinkNode n, char **str, int qt, int pf_flags,
|
|||
out[i*2] = NULL;
|
||||
aval = out;
|
||||
copied = 1;
|
||||
isarr = 1;
|
||||
}
|
||||
} else {
|
||||
if (unset(UNSET)) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue