1
0
Fork 0
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:
Barton E. Schaefer 2017-01-03 14:41:38 -08:00
parent d0f7a3b2d6
commit c4dba4f2e6
2 changed files with 10 additions and 2 deletions

View file

@ -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)) {