From: Bram Moolenaar Date: Fri, 13 Jun 2014 18:08:45 +0000 (+0200) Subject: updated for version 7.4.325 X-Git-Tag: v7.4.325 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=0ae36a5c8542d51dd0d70035e997d96e4a20dcbb;p=vim updated for version 7.4.325 Problem: When starting the gui and changing the window size the status line may not be drawn correctly. Solution: Catch new_win_height() being called recursively. (Christian Brabandt) --- diff --git a/src/version.c b/src/version.c index 15db5ad50..0d0dfd2b4 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 */ +/**/ + 325, /**/ 324, /**/ diff --git a/src/window.c b/src/window.c index f4dea1da1..a94245a81 100644 --- a/src/window.c +++ b/src/window.c @@ -5660,7 +5660,12 @@ win_new_height(wp, height) if (wp->w_height > 0) { if (wp == curwin) - validate_cursor(); /* w_wrow needs to be valid */ + /* w_wrow needs to be valid. When setting 'laststatus' this may + * call win_new_height() recursively. */ + validate_cursor(); + if (wp->w_height != prev_height) + return; /* Recursive call already changed the size, bail out here + to avoid the following to mess things up. */ if (wp->w_wrow != wp->w_prev_fraction_row) set_fraction(wp); }