diff --git a/src/terminal.c b/src/terminal.c
index 644cdda..9729eac 100644
--- a/src/terminal.c
+++ b/src/terminal.c
@@ -2207,10 +2207,8 @@
 #ifdef FEAT_PROP_POPUP
     if (popup_is_popup(wp))
     {
-	if ((wp->w_flags & WFLAG_WROW_OFF_ADDED) == 0)
-	    wp->w_wrow += popup_top_extra(wp);
-	if ((wp->w_flags & WFLAG_WCOL_OFF_ADDED) == 0)
-	    wp->w_wcol += popup_left_extra(wp);
+	wp->w_wrow += popup_top_extra(wp);
+	wp->w_wcol += popup_left_extra(wp);
 	wp->w_flags |= WFLAG_WCOL_OFF_ADDED | WFLAG_WROW_OFF_ADDED;
     }
     else
diff --git a/src/testdir/test_popupwin.vim b/src/testdir/test_popupwin.vim
index 45e3503..42542a3 100644
--- a/src/testdir/test_popupwin.vim
+++ b/src/testdir/test_popupwin.vim
@@ -2662,10 +2662,18 @@
   help
 
   let termbuf = term_start(&shell, #{hidden: 1})
-  let winid = popup_create(termbuf, #{minwidth: 40, minheight: 10})
-  " Wait for shell to start
+  let winid = popup_create(termbuf, #{minwidth: 40, minheight: 10, border: []})
+  " Wait for shell to start and show a prompt
   call WaitForAssert({-> assert_equal("run", job_status(term_getjob(termbuf)))})
-  sleep 100m
+  sleep 20m
+
+  " When typing a character, the cursor is after it.
+  call feedkeys("x", 'xt')
+  sleep 10m
+  redraw
+  call WaitForAssert({ -> assert_equal('x', screenstring(screenrow(), screencol() - 1))})
+  call feedkeys("\<BS>", 'xt')
+
   " Check this doesn't crash
   call assert_equal(winnr(), winnr('j'))
   call assert_equal(winnr(), winnr('k'))
diff --git a/src/version.c b/src/version.c
index b94f0df..e92d754 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2067,
+/**/
     2066,
 /**/
     2065,
