From 57d497c51b1159052cb53c9e4db0388626b35903 Mon Sep 17 00:00:00 2001 From: André Twupack Date: Mon, 22 Sep 2014 20:46:28 +0200 Subject: vim-patch:7.4.386 Problem: When splitting a window the changelist position is wrong. Solution: Copy the changelist position. (Jacob Niehus) https://code.google.com/p/vim/source/detail?r=v7-4-386 --- src/nvim/testdir/Makefile | 1 + src/nvim/testdir/test_changelist.in | 22 ++++++++++++++++++++++ src/nvim/testdir/test_changelist.ok | 1 + src/nvim/version.c | 2 +- src/nvim/window.c | 3 +++ 5 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 src/nvim/testdir/test_changelist.in create mode 100644 src/nvim/testdir/test_changelist.ok (limited to 'src') diff --git a/src/nvim/testdir/Makefile b/src/nvim/testdir/Makefile index 81dc49e800..9f04f880b5 100644 --- a/src/nvim/testdir/Makefile +++ b/src/nvim/testdir/Makefile @@ -33,6 +33,7 @@ SCRIPTS := test_autoformat_join.out \ test106.out test107.out \ test_options.out \ test_listlbr.out test_listlbr_utf8.out \ + test_changelist.out \ test_breakindent.out \ test_insertcount.out diff --git a/src/nvim/testdir/test_changelist.in b/src/nvim/testdir/test_changelist.in new file mode 100644 index 0000000000..6c7c4306c3 --- /dev/null +++ b/src/nvim/testdir/test_changelist.in @@ -0,0 +1,22 @@ +Test changelist position after splitting window +Set 'undolevels' to make changelist for sourced file + +STARTTEST +:so small.vim +Gkylp:set ul=100 +Gylp:set ul=100 +gg +:vsplit +:try +: normal g; +: normal ggVGcpass +:catch +: normal ggVGcfail +:finally +: %w! test.out +:endtry +:qa! +ENDTEST + +1 +2 diff --git a/src/nvim/testdir/test_changelist.ok b/src/nvim/testdir/test_changelist.ok new file mode 100644 index 0000000000..2ae28399f5 --- /dev/null +++ b/src/nvim/testdir/test_changelist.ok @@ -0,0 +1 @@ +pass diff --git a/src/nvim/version.c b/src/nvim/version.c index 5a0b01df28..51012bd69f 100644 --- a/src/nvim/version.c +++ b/src/nvim/version.c @@ -242,7 +242,7 @@ static int included_patches[] = { //389, 388, 387, - //386, + 386, //385, //384 NA 383, diff --git a/src/nvim/window.c b/src/nvim/window.c index ebce53cdf4..5ed145573d 100644 --- a/src/nvim/window.c +++ b/src/nvim/window.c @@ -948,6 +948,9 @@ int win_split_ins(int size, int flags, win_T *new_wp, int dir) p_wh = size; } + // Keep same changelist position in new window. + wp->w_changelistidx = oldwin->w_changelistidx; + /* * make the new window the current window */ -- cgit