summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2015-04-21 15:43:05 +0200
committerBram Moolenaar <Bram@vim.org>2015-04-21 15:43:05 +0200
commit5b14f89164fa2f40f52283226c98005887568317 (patch)
tree87d9743970b06a295154ee3bf7875388bd8d7d67
parentbbc1a592a0e0efd5101a58032e7e7cc9f3e9f417 (diff)
downloadvim-git-7.4.706.tar.gz
patch 7.4.706v7.4.706
Problem: Window drawn wrong when 'laststatus' is zero and there is a command-line window. (Yclept Nemo) Solution: Set the status height a bit later. (Christian Brabandt)
-rw-r--r--src/version.c2
-rw-r--r--src/window.c8
2 files changed, 9 insertions, 1 deletions
diff --git a/src/version.c b/src/version.c
index 0b2d6fe1a..b6676b762 100644
--- a/src/version.c
+++ b/src/version.c
@@ -742,6 +742,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 706,
+/**/
705,
/**/
704,
diff --git a/src/window.c b/src/window.c
index eb218d560..952143003 100644
--- a/src/window.c
+++ b/src/window.c
@@ -1236,7 +1236,8 @@ win_split_ins(size, flags, new_wp, dir)
{
wp->w_winrow = oldwin->w_winrow + oldwin->w_height + STATUS_HEIGHT;
wp->w_status_height = oldwin->w_status_height;
- oldwin->w_status_height = STATUS_HEIGHT;
+ /* Don't set the status_height for oldwin yet, this might break
+ * frame_fix_height(oldwin), therefore will be set below. */
}
#ifdef FEAT_VERTSPLIT
if (flags & WSP_BOT)
@@ -1244,6 +1245,11 @@ win_split_ins(size, flags, new_wp, dir)
#endif
frame_fix_height(wp);
frame_fix_height(oldwin);
+
+ if (!before)
+ /* new window above current one, set the status_height after
+ * frame_fix_height(oldwin) */
+ oldwin->w_status_height = STATUS_HEIGHT;
}
if (flags & (WSP_TOP | WSP_BOT))