patch 8.1.1447: not allowed to create an empty popup

Problem:    Not allowed to create an empty popup.
Solution:   Remove restriction that there is some text. (closes #4470)
diff --git a/src/popupwin.c b/src/popupwin.c
index dc3b564..4e07bdb 100644
--- a/src/popupwin.c
+++ b/src/popupwin.c
@@ -488,12 +488,8 @@
     int	    nr;
 
     // Check arguments look OK.
-    if (!(argvars[0].v_type == VAR_STRING
-		&& argvars[0].vval.v_string != NULL
-		&& STRLEN(argvars[0].vval.v_string) > 0)
-	&& !(argvars[0].v_type == VAR_LIST
-	    && argvars[0].vval.v_list != NULL
-	    && argvars[0].vval.v_list->lv_len > 0))
+    if (!(argvars[0].v_type == VAR_STRING && argvars[0].vval.v_string != NULL)
+	&& !(argvars[0].v_type == VAR_LIST && argvars[0].vval.v_list != NULL))
     {
 	emsg(_(e_listreq));
 	return;
@@ -560,12 +556,15 @@
     {
 	list_T *l = argvars[0].vval.v_list;
 
-	if (l->lv_first->li_tv.v_type == VAR_STRING)
-	    // list of strings
-	    add_popup_strings(buf, l);
-	else
-	    // list of dictionaries
-	    add_popup_dicts(buf, l);
+	if (l->lv_len > 0)
+	{
+	    if (l->lv_first->li_tv.v_type == VAR_STRING)
+		// list of strings
+		add_popup_strings(buf, l);
+	    else
+		// list of dictionaries
+		add_popup_dicts(buf, l);
+	}
     }
 
     // Delete the line of the empty buffer.
diff --git a/src/testdir/test_popupwin.vim b/src/testdir/test_popupwin.vim
index 6e05919..4ed3b1c 100644
--- a/src/testdir/test_popupwin.vim
+++ b/src/testdir/test_popupwin.vim
@@ -596,3 +596,17 @@
   call popup_close(winid, 'done')
   call assert_equal('done', g:result)
 endfunc
+
+func Test_popup_empty()
+  let winid = popup_create('', {'padding': [2,2,2,2]})
+  redraw
+  let pos = popup_getpos(winid)
+  call assert_equal(4, pos.width)
+  call assert_equal(5, pos.height)
+
+  let winid = popup_create([], {'border': []})
+  redraw
+  let pos = popup_getpos(winid)
+  call assert_equal(2, pos.width)
+  call assert_equal(3, pos.height)
+endfunc
diff --git a/src/version.c b/src/version.c
index 597fb90..9f316c1 100644
--- a/src/version.c
+++ b/src/version.c
@@ -768,6 +768,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1447,
+/**/
     1446,
 /**/
     1445,