1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-10-03 08:11:03 +02:00

24890: Matt Wozniski: reset skip_pos on backtracking in isearch

This commit is contained in:
Peter Stephenson 2008-04-28 10:56:42 +00:00
parent 0c0213b517
commit be947a5606
2 changed files with 18 additions and 14 deletions

View file

@ -1,5 +1,8 @@
2008-04-28 Peter Stephenson <pws@csr.com>
* 24890: Matt Wozniski: Src/Zle/zle_hist.c: skip_pos was
staying set causing random failures on backtracking in isearch.
* 24887: Geoff: Src/glob.c: typo.
2008-04-27 Peter Stephenson <p.w.stephenson@ntlworld.com>

View file

@ -1442,20 +1442,21 @@ doisearch(char **args, int dir, int pattern)
if(selectkeymap(invicmdmode() ? "main" : "vicmd", 0))
feep = 1;
goto ref;
} else if(cmd == Th(z_vibackwarddeletechar) ||
cmd == Th(z_backwarddeletechar)) {
if (top_spot) {
get_isrch_spot(--top_spot, &hl, &pos, &pat_hl, &pat_pos,
&end_pos, &zlemetacs, &sbptr, &dir, &nomatch);
patprog = NULL;
nosearch = 1;
} else
feep = 1;
if (nomatch) {
memcpy(ibuf, nomatch == 2 ? INVALID_TEXT : FAILING_TEXT,
BAD_TEXT_LEN);
statusline = ibuf;
skip_pos = 1;
} else if(cmd == Th(z_vibackwarddeletechar) ||
cmd == Th(z_backwarddeletechar)) {
if (top_spot) {
get_isrch_spot(--top_spot, &hl, &pos, &pat_hl, &pat_pos,
&end_pos, &zlemetacs, &sbptr, &dir, &nomatch);
patprog = NULL;
nosearch = 1;
skip_pos = 0;
} else
feep = 1;
if (nomatch) {
memcpy(ibuf, nomatch == 2 ? INVALID_TEXT : FAILING_TEXT,
BAD_TEXT_LEN);
statusline = ibuf;
skip_pos = 1;
}
he = quietgethist(hl);
zt = GETZLETEXT(he);