summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--Functions/Misc/zargs4
2 files changed, 7 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 5fbd907b3..8a5085fba 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2015-07-27  Barton E. Schaefer  <schaefer@zsh.org>
+
+	* 35937: Functions/Misc/zargs: wait for process IDs instead of
+	job numbers in parallel mode, in case zargs is in a pipeline
+
 2015-07-26  Daniel Shahaf  <d.s@daniel.shahaf.name>
 
 	* 35274 (plus tweaks): Completion/BSD/Command/_watch-snoop
diff --git a/Functions/Misc/zargs b/Functions/Misc/zargs
index 71fd42835..28ebca78f 100644
--- a/Functions/Misc/zargs
+++ b/Functions/Misc/zargs
@@ -73,7 +73,7 @@
 emulate -L zsh || return 1
 local -a opts eof n s l P i
 
-local ZARGS_VERSION="1.4"
+local ZARGS_VERSION="1.5"
 
 if zparseopts -a opts -D -- \
 	-eof::=eof e::=eof \
@@ -254,7 +254,7 @@ then
     bg='&'
     if zmodload -i zsh/parameter 2>/dev/null
     then
-	wait='wait %${(k)^jobstates[(R)running:*]}'
+	wait='wait ${${jobstates[(R)running:*]/#*:/}/%=*/}'
     else
 	wait='wait'
     fi