From 43079e5d8ec4e3016c380a6043c90f94fe45d72a Mon Sep 17 00:00:00 2001 From: "Barton E. Schaefer" Date: Sat, 22 Aug 2015 21:54:31 -0700 Subject: 36274: clear virangeflag when getvirange() has an error (the next keystroke is not a motion/selection). --- ChangeLog | 3 +++ Src/Zle/zle_vi.c | 2 ++ 2 files changed, 5 insertions(+) diff --git a/ChangeLog b/ChangeLog index 1cc9ff1ec..746caece8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2015-08-22 Barton E. Schaefer + * 36274: Src/Zle/zle_vi.c: clear virangeflag when getvirange() + has an error (the next keystroke is not a motion/selection). + * 36273: Src/Zle/zle_move.c: teach endofline() and endoflinehist() about invicmdmode() cursor placement. diff --git a/Src/Zle/zle_vi.c b/Src/Zle/zle_vi.c index 1a11ca7d5..42dc46e7e 100644 --- a/Src/Zle/zle_vi.c +++ b/Src/Zle/zle_vi.c @@ -224,6 +224,7 @@ getvirange(int wf) ZS_memcpy(zleline, lastline, zlell = lastll); zlecs = pos; mark = mpos; + virangeflag = 0; return -1; } @@ -232,6 +233,7 @@ getvirange(int wf) if (!zlell || (zlecs == pos && (mark == -1 || mark == zlecs) && virangeflag != 2) || ret == -1) { mark = mpos; + virangeflag = 0; return -1; } virangeflag = 0; -- cgit 1.4.1