diff options
author | Peter Stephenson <p.w.stephenson@ntlworld.com> | 2017-09-04 21:36:46 +0100 |
---|---|---|
committer | Peter Stephenson <p.w.stephenson@ntlworld.com> | 2017-09-04 21:36:46 +0100 |
commit | 5a8155f7b7ab8f3cab1f95d4dba5ed49de0ab77c (patch) | |
tree | 93e954a473fa844062b61909c6f33d9406db231d | |
parent | 1e536747aee3d39d7e960add67f19fcf6e9ee284 (diff) | |
download | zsh-5a8155f7b7ab8f3cab1f95d4dba5ed49de0ab77c.tar.gz zsh-5a8155f7b7ab8f3cab1f95d4dba5ed49de0ab77c.tar.xz zsh-5a8155f7b7ab8f3cab1f95d4dba5ed49de0ab77c.zip |
41633: Fix problem backgrounding function definitions.
Owing to being marked as simple sublists the instruction to background was ignored. This applied to anonymous functions.
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | Src/parse.c | 7 |
2 files changed, 12 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog index 9ccfc461b..e51e5c47d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2017-09-04 Peter Stephenson <p.w.stephenson@ntlworld.com> + + * 41633: Src/parse.c: make sure function definitions including + anonymous functions put into the background are run in the + background. + 2017-09-04 Daniel Shahaf <d.s@daniel.shahaf.name> * 41621: Completion/Unix/Command/_mkdir: Honour the 'command' diff --git a/Src/parse.c b/Src/parse.c index 27052527d..6e0856bbc 100644 --- a/Src/parse.c +++ b/Src/parse.c @@ -808,8 +808,13 @@ par_sublist(int *cmplx) WC_SUBLIST_END), f, (e - 1 - p), c); cmdpop(); - } else + } else { + if (tok == AMPER || tok == AMPERBANG) { + c = 1; + *cmplx |= c; + } set_sublist_code(p, WC_SUBLIST_END, f, (e - 1 - p), c); + } return 1; } else { ecused--; |