about summary refs log tree commit diff
diff options
context:
space:
mode:
authorOliver Kiddle <opk@users.sourceforge.net>2003-07-09 15:53:23 +0000
committerOliver Kiddle <opk@users.sourceforge.net>2003-07-09 15:53:23 +0000
commitec8418cf1c2143be758236a998f39c624e4080ab (patch)
treeaec173d84c4a7662fb1704f6ed760ad20d7a31b0
parent48dbd4a65c740f3b7f3776e49ab61dbffb8e35b2 (diff)
downloadzsh-ec8418cf1c2143be758236a998f39c624e4080ab.tar.gz
zsh-ec8418cf1c2143be758236a998f39c624e4080ab.tar.xz
zsh-ec8418cf1c2143be758236a998f39c624e4080ab.zip
18841: work around problem which caused the whole word to be removed
-rw-r--r--ChangeLog9
-rw-r--r--Completion/Base/Completer/_prefix6
2 files changed, 12 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 8cc48401f..4ac17522a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2003-07-09  Oliver Kiddle  <opk@zsh.org>
+
+	* 18841: Completion/Base/Completer/_prefix: work around problem
+	where the unambiguous part is empty making the word be removed
+
 2003-07-09  Peter Stephenson  <pws@csr.com>
 
 	* 18839, modified c.f. 18840: Completion/Unix/Command/_nice,
@@ -25,9 +30,9 @@
 
 2003-07-07  Clint Adams  <clint@zsh.org>
 
-	* 18xxx: Completion/Unix/Command/_subversion: completion for
+	* 18831: Completion/Unix/Command/_subversion: completion for
 	svn and svnadmin.
-	* 18xxx: Completion/Debian/Command/_debsign: completion for
+	* 18832: Completion/Debian/Command/_debsign: completion for
 	debsign, by Matt Zimmerman.
 
 2003-07-04  Oliver Kiddle  <opk@zsh.org>
diff --git a/Completion/Base/Completer/_prefix b/Completion/Base/Completer/_prefix
index 3ec153245..a198f4cfb 100644
--- a/Completion/Base/Completer/_prefix
+++ b/Completion/Base/Completer/_prefix
@@ -48,7 +48,11 @@ for tmp in "$comp[@]"; do
       [[ compstate[nmatches] -gt 1 ]] && return 0
       compadd -U -i "$IPREFIX" -I "$ISUFFIX" - "${compstate[unambiguous]%$suf}x"
       compstate[list]=
-      compstate[insert]=unambiguous
+      if [[ -n $compstate[unambiguous] ]]; then
+        compstate[insert]=unambiguous
+      else
+        compstate[insert]=0
+      fi
       return 0
     fi
     (( _matcher_num++ ))