mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-09-11 00:51:05 +02:00
40593: SHWORDSPLIT + unset IFS should cause default splitting of $@
This commit is contained in:
parent
9f447578f0
commit
b3c186028e
2 changed files with 5 additions and 1 deletions
|
@ -1,5 +1,8 @@
|
||||||
2017-02-19 Barton E. Schaefer <schaefer@zsh.org>
|
2017-02-19 Barton E. Schaefer <schaefer@zsh.org>
|
||||||
|
|
||||||
|
* 40593: Src/subst.c: SHWORDSPLIT + unset IFS should cause default
|
||||||
|
splitting of $@ and other array references with (@) or [@]
|
||||||
|
|
||||||
* 40576 (tweaked): Src/exec.c: entersubsh(): small improvement to
|
* 40576 (tweaked): Src/exec.c: entersubsh(): small improvement to
|
||||||
loop that resets trap handlers; unblock any signals that were
|
loop that resets trap handlers; unblock any signals that were
|
||||||
blocked for trap handling
|
blocked for trap handling
|
||||||
|
|
|
@ -3476,7 +3476,8 @@ paramsubst(LinkList l, LinkNode n, char **str, int qt, int pf_flags,
|
||||||
val = sepjoin(aval, sep, 1);
|
val = sepjoin(aval, sep, 1);
|
||||||
isarr = 0;
|
isarr = 0;
|
||||||
ms_flags = 0;
|
ms_flags = 0;
|
||||||
} else if (force_split && (spsep || nojoin == 2)) {
|
} else if (force_split &&
|
||||||
|
(spsep || nojoin == 2 || (!ifs && isarr < 0))) {
|
||||||
/* Hack to simulate splitting individual elements:
|
/* Hack to simulate splitting individual elements:
|
||||||
* forced joining as previously determined, or
|
* forced joining as previously determined, or
|
||||||
* join on what we later use to forcibly split
|
* join on what we later use to forcibly split
|
||||||
|
|
Loading…
Reference in a new issue