aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/normal.c
diff options
context:
space:
mode:
authorJames McCoy <jamessan@jamessan.com>2017-06-27 03:19:01 +0000
committerGitHub <noreply@github.com>2017-06-27 03:19:01 +0000
commit91749c06dcc7e5119be097238a6e20fe829c8cc8 (patch)
tree11ff5884cd35e9dfd6d37044fb277fb1a428d15e /src/nvim/normal.c
parentf34befe74c5a7b18a802f6f3c79607cb2124004c (diff)
parent6a842132bcecb0d255fabf937694d1abfde1c86d (diff)
downloadrneovim-91749c06dcc7e5119be097238a6e20fe829c8cc8.tar.gz
rneovim-91749c06dcc7e5119be097238a6e20fe829c8cc8.tar.bz2
rneovim-91749c06dcc7e5119be097238a6e20fe829c8cc8.zip
Merge pull request #6927 from jamessan/vim-7.4.2259
vim-patch:7.4.2259,7.4.2268,7.4.2318,7.4.2320
Diffstat (limited to 'src/nvim/normal.c')
-rw-r--r--src/nvim/normal.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/nvim/normal.c b/src/nvim/normal.c
index 050020d79d..39cd2c6631 100644
--- a/src/nvim/normal.c
+++ b/src/nvim/normal.c
@@ -5231,6 +5231,7 @@ static void nv_dollar(cmdarg_T *cap)
static void nv_search(cmdarg_T *cap)
{
oparg_T *oap = cap->oap;
+ pos_T save_cursor = curwin->w_cursor;
if (cap->cmdchar == '?' && cap->oap->op_type == OP_ROT13) {
/* Translate "g??" to "g?g?" */
@@ -5240,6 +5241,8 @@ static void nv_search(cmdarg_T *cap)
return;
}
+ // When using 'incsearch' the cursor may be moved to set a different search
+ // start position.
cap->searchbuf = getcmdline(cap->cmdchar, cap->count1, 0);
if (cap->searchbuf == NULL) {
@@ -5248,7 +5251,8 @@ static void nv_search(cmdarg_T *cap)
}
(void)normal_search(cap, cap->cmdchar, cap->searchbuf,
- (cap->arg ? 0 : SEARCH_MARK));
+ (cap->arg || !equalpos(save_cursor, curwin->w_cursor))
+ ? 0 : SEARCH_MARK);
}
/*