Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: Infinite loop in compprintfmt() (complist.c rev 1.91)



Bart Schaefer <schaefer@xxxxxxxxxxxxxxxx> wrote:
> Here's a gdb walk-through -- note we return to line 896 (really the loop
> at 892) without ever incrementing the loop variable.

Yes, I missed the dopr==0 branch when I moved the increment into the point
where we're possibly printing more than one byte.

Index: Src/Zle/complist.c
===================================================================
RCS file: /cvsroot/zsh/zsh/Src/Zle/complist.c,v
retrieving revision 1.91
diff -u -r1.91 complist.c
--- Src/Zle/complist.c	11 Aug 2006 21:30:38 -0000	1.91
+++ Src/Zle/complist.c	14 Aug 2006 12:50:29 -0000
@@ -1069,6 +1069,8 @@
 		    return mlprinted;
 		}
 	    }
+	    else
+		p += len;
 	}
     }
     if (dopr) {

-- 
Peter Stephenson <pws@xxxxxxx>                  Software Engineer
CSR PLC, Churchill House, Cambridge Business Park, Cowley Road
Cambridge, CB4 0WZ, UK                          Tel: +44 (0)1223 692070


To access the latest news from CSR copy this link into a web browser:  http://www.csr.com/email_sig.php



Messages sorted by: Reverse Date, Date, Thread, Author