about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--Completion/Unix/Command/_perforce4
2 files changed, 8 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 0232558cb..c6dcee426 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2006-10-27  Peter Stephenson  <pws@csr.com>
+
+	* unposted: Completion/Unix/Command/_perforce: completion
+	of jobs selected from a jobview (e.g. after p4 fix -d -c <change>)
+	was broken.
+
 2006-10-27  Clint Adams  <clint@zsh.org>
 
 	* 22914: Completion/Unix/Command/_cdrecord: add wodim to compdef
diff --git a/Completion/Unix/Command/_perforce b/Completion/Unix/Command/_perforce
index 0afbbcb8c..f3f865960 100644
--- a/Completion/Unix/Command/_perforce
+++ b/Completion/Unix/Command/_perforce
@@ -1219,7 +1219,7 @@ _perforce_jobs() {
   # This is nasty, it's really unnecessarily difficult to
   # pass arguments within completion functions...
   if [[ $argv[-2] = -e ]]; then
-    ajobview=(-e "$argv[-1]")
+    ajobview=(-e "${(q)argv[-1]}")
     argv=("${(@)argv[1,-3]}")
   else
     zstyle -s ":completion:${curcontext}:jobs" jobview jobview &&
@@ -1722,7 +1722,7 @@ _perforce_cmd_fix() {
     jobs=(${${(f)"$(_perforce_call_p4 fixes fixes -c $words[$words[(i)-c]+1])"}%" fixed by change "*})
     if (( ${#jobs} )); then
       jobs=("Job="${^jobs})
-      job=" -e ${(j.|.)jobs}"
+      job=" -e \"${(j.|.)jobs}\""
     fi
   fi