forked from aniani/vim
patch 8.2.2244: crash when making the window width negative
Problem: Crash when making the window width of the not-current window negative. Solution: Make sure the window width is not negative. (closes #7568)
This commit is contained in:
@@ -1148,6 +1148,14 @@ func Test_window_resize()
|
|||||||
exe other_winnr .. 'resize +1'
|
exe other_winnr .. 'resize +1'
|
||||||
call assert_equal(12, winheight(other_winnr))
|
call assert_equal(12, winheight(other_winnr))
|
||||||
call assert_equal(&lines - 10 - 3 -2, winheight(0))
|
call assert_equal(&lines - 10 - 3 -2, winheight(0))
|
||||||
|
close
|
||||||
|
|
||||||
|
vsplit
|
||||||
|
wincmd l
|
||||||
|
let other_winnr = winnr('h')
|
||||||
|
call assert_notequal(winnr(), other_winnr)
|
||||||
|
exe 'vert ' .. other_winnr .. 'resize -100'
|
||||||
|
call assert_equal(0, winwidth(other_winnr))
|
||||||
|
|
||||||
%bwipe!
|
%bwipe!
|
||||||
endfunc
|
endfunc
|
||||||
|
@@ -750,6 +750,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
2244,
|
||||||
/**/
|
/**/
|
||||||
2243,
|
2243,
|
||||||
/**/
|
/**/
|
||||||
|
@@ -5687,6 +5687,8 @@ win_setwidth_win(int width, win_T *wp)
|
|||||||
if (width == 0)
|
if (width == 0)
|
||||||
width = 1;
|
width = 1;
|
||||||
}
|
}
|
||||||
|
else if (width < 0)
|
||||||
|
width = 0;
|
||||||
|
|
||||||
frame_setwidth(wp->w_frame, width + wp->w_vsep_width);
|
frame_setwidth(wp->w_frame, width + wp->w_vsep_width);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user