From b7f4c91597226b5f95f7f153618cf52c665c0b71 Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Fri, 13 Mar 2009 09:58:14 +0000 Subject: users/13903 fix vi search prompt and repeat --- Src/Zle/zle_hist.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'Src/Zle/zle_hist.c') diff --git a/Src/Zle/zle_hist.c b/Src/Zle/zle_hist.c index aec847ec6..532787bfa 100644 --- a/Src/Zle/zle_hist.c +++ b/Src/Zle/zle_hist.c @@ -1742,7 +1742,7 @@ getvisrchstr(void) selectkeymap("main", 1); while (sptr) { sbuf[sptr] = '_'; - sbuf[sptr] = '\0'; + sbuf[sptr+1] = '\0'; zrefresh(); if (!(cmd = getkeycmd()) || cmd == Th(z_sendbreak)) { ret = 0; @@ -1760,6 +1760,10 @@ getvisrchstr(void) cmd == Th(z_vicmdmode)) { sbuf[sptr] = ZWC('\0'); visrchstr = ztrdup(sbuf+1); + if (!strlen(visrchstr)) { + zsfree(visrchstr); + visrchstr = ztrdup(vipenultsrchstr); + } ret = 1; sptr = 0; } else if(cmd == Th(z_backwarddeletechar) || -- cgit 1.4.1