summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2020-10-17 17:39:55 +0200
committerBram Moolenaar <Bram@vim.org>2020-10-17 17:39:55 +0200
commit9668cc57a1e70c99163f90f58202e206d12f40c8 (patch)
treea6d64b73f149a8989649393fdb9eb59ff404266f
parente13bdec6b90b3a0fce4f021e3ee986e731cea3b5 (diff)
downloadvim-git-9668cc57a1e70c99163f90f58202e206d12f40c8.tar.gz
patch 8.2.1856: "2resize" uses size of current windowv8.2.1856
Problem: "2resize" uses size of current window. Solution: Use size of resized window. (Yasuhiro Matsumoto, closes #7152)
-rw-r--r--src/ex_docmd.c4
-rw-r--r--src/testdir/test_window_cmd.vim4
-rw-r--r--src/version.c2
3 files changed, 8 insertions, 2 deletions
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index 66c0b667a..1ccd38ec9 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -6365,7 +6365,7 @@ ex_resize(exarg_T *eap)
if (cmdmod.split & WSP_VERT)
{
if (*eap->arg == '-' || *eap->arg == '+')
- n += curwin->w_width;
+ n += wp->w_width;
else if (n == 0 && eap->arg[0] == NUL) // default is very wide
n = 9999;
win_setwidth_win((int)n, wp);
@@ -6373,7 +6373,7 @@ ex_resize(exarg_T *eap)
else
{
if (*eap->arg == '-' || *eap->arg == '+')
- n += curwin->w_height;
+ n += wp->w_height;
else if (n == 0 && eap->arg[0] == NUL) // default is very high
n = 9999;
win_setheight_win((int)n, wp);
diff --git a/src/testdir/test_window_cmd.vim b/src/testdir/test_window_cmd.vim
index a4b4f5319..51d072272 100644
--- a/src/testdir/test_window_cmd.vim
+++ b/src/testdir/test_window_cmd.vim
@@ -1144,6 +1144,10 @@ func Test_window_resize()
exe other_winnr .. 'resize 10'
call assert_equal(10, winheight(other_winnr))
call assert_equal(&lines - 10 - 3, winheight(0))
+ exe other_winnr .. 'resize +1'
+ exe other_winnr .. 'resize +1'
+ call assert_equal(12, winheight(other_winnr))
+ call assert_equal(&lines - 10 - 3 -2, winheight(0))
%bwipe!
endfunc
diff --git a/src/version.c b/src/version.c
index cc9876911..ff532f1f7 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1856,
+/**/
1855,
/**/
1854,