From: Bram Moolenaar Date: Wed, 28 May 2014 11:43:04 +0000 (+0200) Subject: updated for version 7.4.309 X-Git-Tag: v7.4.309 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=dd0402a759488fba55aef4350da521e7b65e8855;p=vim updated for version 7.4.309 Problem: When increasing the size of the lower window, the upper window jumps back to the top. (Ron Aaron) Solution: Change setting the topline. (Nobuhiro Takasaki) --- diff --git a/src/version.c b/src/version.c index f72ae97f2..403a6e474 100644 --- a/src/version.c +++ b/src/version.c @@ -734,6 +734,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 309, /**/ 308, /**/ diff --git a/src/window.c b/src/window.c index cea7c402d..856e7c459 100644 --- a/src/window.c +++ b/src/window.c @@ -5710,8 +5710,9 @@ win_new_height(wp, height) --wp->w_wrow; } } + set_topline(wp, lnum); } - else + else if (sline > 0) { while (sline > 0 && lnum > 1) { @@ -5748,14 +5749,15 @@ win_new_height(wp, height) lnum++; wp->w_wrow -= line_size + sline; } - else if (sline >= 0) + else if (sline > 0) { /* First line of file reached, use that as topline. */ lnum = 1; wp->w_wrow -= sline; } + + set_topline(wp, lnum); } - set_topline(wp, lnum); } if (wp == curwin)