summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2020-05-27 23:15:16 +0200
committerBram Moolenaar <Bram@vim.org>2020-05-27 23:15:16 +0200
commit3f65c66df95445ef84f98de007c9b70ce23f54a0 (patch)
tree856da8969e8dde300c7f93a831ede5dbedaca76f
parentca5bc746073b6fd4b7651bc02f7a18b1b43bd4ca (diff)
downloadvim-git-3f65c66df95445ef84f98de007c9b70ce23f54a0.tar.gz
patch 8.2.0834: :drop command in terminal popup causes problemsv8.2.0834
Problem: :drop command in terminal popup causes problems. Solution: Check for using a popup window. (closes #6151)
-rw-r--r--src/ex_cmds.c3
-rw-r--r--src/testdir/test_popupwin.vim3
-rw-r--r--src/version.c2
3 files changed, 8 insertions, 0 deletions
diff --git a/src/ex_cmds.c b/src/ex_cmds.c
index 9c55de3ad..777f1490c 100644
--- a/src/ex_cmds.c
+++ b/src/ex_cmds.c
@@ -6349,6 +6349,9 @@ ex_drop(exarg_T *eap)
buf_T *buf;
tabpage_T *tp;
+ if (ERROR_IF_POPUP_WINDOW || ERROR_IF_TERM_POPUP_WINDOW)
+ return;
+
/*
* Check if the first argument is already being edited in a window. If
* so, jump to that window.
diff --git a/src/testdir/test_popupwin.vim b/src/testdir/test_popupwin.vim
index 8c917bc8e..1e7d5eed1 100644
--- a/src/testdir/test_popupwin.vim
+++ b/src/testdir/test_popupwin.vim
@@ -2445,6 +2445,9 @@ func Test_popupwin_terminal_buffer()
call assert_fails('call feedkeys("gf", "xt")', 'E863:')
call feedkeys("a\<C-U>", 'xt')
+ " Cannot escape from terminal window
+ call assert_fails('tab drop xxx', 'E863:')
+
" Cannot open a second one.
let termbuf2 = term_start(&shell, #{hidden: 1})
call assert_fails('call popup_create(termbuf2, #{})', 'E861:')
diff --git a/src/version.c b/src/version.c
index 44f7f26c4..24a576724 100644
--- a/src/version.c
+++ b/src/version.c
@@ -747,6 +747,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 834,
+/**/
833,
/**/
832,