patch 8.2.1578: Vim9: popup_clear() does not take "true" as argument
Problem: Vim9: popup_clear() does not take "true" as argument.
Solution: Use tv_get_bool(). (closes #6826)
diff --git a/src/popupwin.c b/src/popupwin.c
index 053d6d3..953e76c 100644
--- a/src/popupwin.c
+++ b/src/popupwin.c
@@ -2125,7 +2125,7 @@
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 1aebe05..9e35c7f 100644
--- a/src/testdir/test_popupwin.vim
+++ b/src/testdir/test_popupwin.vim
@@ -2559,20 +2559,23 @@
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 5232e84..12d49bb 100644
--- a/src/version.c
+++ b/src/version.c
@@ -755,6 +755,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1578,
+/**/
1577,
/**/
1576,