diff --git a/src/popupwin.c b/src/popupwin.c index 053d6d3fd8..953e76cc7e 100644 --- a/src/popupwin.c +++ b/src/popupwin.c @@ -2125,7 +2125,7 @@ f_popup_clear(typval_T *argvars, typval_T *rettv UNUSED) int force = FALSE; if (argvars[0].v_type != VAR_UNKNOWN) - force = (int)tv_get_number(&argvars[0]); + force = (int)tv_get_bool(&argvars[0]); close_all_popups(force); } diff --git a/src/testdir/test_popupwin.vim b/src/testdir/test_popupwin.vim index 1aebe058f7..9e35c7ffc7 100644 --- a/src/testdir/test_popupwin.vim +++ b/src/testdir/test_popupwin.vim @@ -2559,20 +2559,23 @@ endfunc func Test_popupwin_close_prevwin() CheckFeature terminal + call Popupwin_close_prevwin() +endfunc - call assert_equal(1, winnr('$')) +def Popupwin_close_prevwin() + assert_equal(1, winnr('$')) split wincmd b - call assert_equal(2, winnr()) + assert_equal(2, winnr()) let buf = term_start(&shell, #{hidden: 1}) - call popup_create(buf, {}) - call TermWait(buf, 100) - call popup_clear(1) - call assert_equal(2, winnr()) + popup_create(buf, {}) + TermWait(buf, 100) + popup_clear(true) + assert_equal(2, winnr()) quit exe 'bwipe! ' .. buf -endfunc +enddef func Test_popupwin_with_buffer_and_filter() new Xwithfilter diff --git a/src/version.c b/src/version.c index 5232e8485c..12d49bbcf0 100644 --- a/src/version.c +++ b/src/version.c @@ -754,6 +754,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1578, /**/ 1577, /**/