patch 8.2.1581: using line() for global popup window doesn't work

Problem:    Using line() for global popup window doesn't work.
Solution:   Set tabpage to "curtab". (closes #6847)
diff --git a/src/evalwindow.c b/src/evalwindow.c
index b50776d..3ddd96b 100644
--- a/src/evalwindow.c
+++ b/src/evalwindow.c
@@ -117,7 +117,7 @@
 	if (wp->w_id == id)
 	{
 	    if (tpp != NULL)
-		*tpp = tp;
+		*tpp = curtab;  // any tabpage would do
 	    return wp;
 	}
 #endif
diff --git a/src/testdir/test_popupwin.vim b/src/testdir/test_popupwin.vim
index 9e35c7f..ec4898f 100644
--- a/src/testdir/test_popupwin.vim
+++ b/src/testdir/test_popupwin.vim
@@ -2239,6 +2239,18 @@
   call delete('XtestPopupSetText')
 endfunc
 
+func Test_popup_settext_getline()
+  let id = popup_create('', #{ tabpage: 0 })
+  call popup_settext(id, ['a','b'])
+  call assert_equal(2, line('$', id)) " OK :)
+  call popup_close(id)
+
+  let id = popup_create('', #{ tabpage: -1 })
+  call popup_settext(id, ['a','b'])
+  call assert_equal(2, line('$', id)) " Fails :(
+  call popup_close(id)
+endfunc
+
 func Test_popup_hidden()
   new
 
diff --git a/src/version.c b/src/version.c
index 8d20b46..39e81bc 100644
--- a/src/version.c
+++ b/src/version.c
@@ -755,6 +755,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1581,
+/**/
     1580,
 /**/
     1579,