about summary refs log tree commit diff
diff options
context:
space:
mode:
authorPeter Stephenson <pws@users.sourceforge.net>2007-04-17 14:55:15 +0000
committerPeter Stephenson <pws@users.sourceforge.net>2007-04-17 14:55:15 +0000
commit0e58658d4a04f038c0b2b2f485c58a252a1aa684 (patch)
tree27b4dc980e6ba070d0b1c6be5c38ef28678005ae
parent25bb07b80e026f2d1e2a7656a6a29ca9b3686b0e (diff)
downloadzsh-0e58658d4a04f038c0b2b2f485c58a252a1aa684.tar.gz
zsh-0e58658d4a04f038c0b2b2f485c58a252a1aa684.tar.xz
zsh-0e58658d4a04f038c0b2b2f485c58a252a1aa684.zip
users/11421: %{...%} was broken in completion listings
-rw-r--r--ChangeLog3
-rw-r--r--Src/Zle/complist.c6
2 files changed, 5 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index c0d7df130..2438921c5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2007-04-17  Peter Stephenson  <pws@csr.com>
 
+	* users/11421: Src/Zle/complist.c: use of %{...%} in
+	completion list formatting was broken.
+
 	* Christoph Bauer: users/11416: Src/utils.c: bad use
 	of VARRAR confused some compilers.
 
diff --git a/Src/Zle/complist.c b/Src/Zle/complist.c
index 40bfdfe05..cedccc254 100644
--- a/Src/Zle/complist.c
+++ b/Src/Zle/complist.c
@@ -1046,13 +1046,11 @@ compprintfmt(char *fmt, int n, int dopr, int doesc, int ml, int *stop)
 			tcout(TCUNDERLINEEND);
 		    break;
 		case ZWC('{'):
-		    for (p++; *p && (*p != '%' || p[1] != '}'); p++)
+		    for (; *p && (*p != '%' || p[1] != '}'); p++)
 			if (dopr)
 			    putc(*p == Meta ? *++p ^ 32 : *p, shout);
 		    if (*p)
-			p++;
-		    else
-			p--;
+			p += 2;
 		    break;
 		case ZWC('m'):
 		    if (stat) {