# HG changeset patch # User Bram Moolenaar # Date 1349264151 -7200 # Node ID ca1c025079b11c98363e11576d903af756a593fc # Parent 04592728474a35794ae6397a0b90f2989864fb66 updated for version 7.3.673 Problem: Using "gN" while 'selection' is "exclusive" misses one character. (Ben Fritz) Solution: Check the direction when compensating for exclusive selection. (Christian Brabandt) diff --git a/src/search.c b/src/search.c --- a/src/search.c +++ b/src/search.c @@ -4650,8 +4650,15 @@ current_search(count, forward) if (VIsual_active) { redraw_curbuf_later(INVERTED); /* update the inversion */ - if (*p_sel == 'e' && ltoreq(VIsual, curwin->w_cursor)) - inc_cursor(); + if (*p_sel == 'e') + { + /* Correction for exclusive selection depends on the direction. */ + if (forward && ltoreq(VIsual, curwin->w_cursor)) + inc_cursor(); + else if (!forward && ltoreq(curwin->w_cursor, VIsual)) + inc(&VIsual); + } + } #ifdef FEAT_FOLDING diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -720,6 +720,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 673, +/**/ 672, /**/ 671,