summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--Completion/Unix/Command/_cvs4
2 files changed, 7 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 25228940c..74e422037 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2003-07-03 Peter Stephenson <pws@csr.com>
+ * 19696: Completion/Unix/Command/_cvs: quoting of characters
+ when completing existing CVS-managed files (in particular
+ spaces) was flakey. The same problem probably exists for
+ completing modified files, but the code is indecipherable.
+
* 18769: Src/exec.c: parse error in autoloading file causes
return value zero and empty function definition. Presumed
to be error introduced with wordcode.
diff --git a/Completion/Unix/Command/_cvs b/Completion/Unix/Command/_cvs
index c2ddb2e2c..8082b7336 100644
--- a/Completion/Unix/Command/_cvs
+++ b/Completion/Unix/Command/_cvs
@@ -912,8 +912,8 @@ _cvs_existing_entries () {
linedir="$match[1]"
realdir=${(e)~linedir}
[[ -f "$realdir"CVS/Entries ]] &&
- [[ -n ${pat::="${(@j:|:)${(@)${(@)${(@)${(@M)${(@f)"$(<"$realdir"CVS/Entries)"}:#/*}#/}%%/*}//(#m)[][*?()<|^~#\\]/\\$MATCH}}"} ]] &&
- _wanted files expl file _path_files -g "$pat"
+ pat=(${(@)${(@)${(@M)${(@f)"$(<"$realdir"CVS/Entries)"}:#/*}#/}%%/*})
+ (( ${#pat} )) && _wanted files expl file _path_files -a pat
}
(( $+functions[_cvs_modified_entries] )) ||