summaryrefslogtreecommitdiff
path: root/src/normal.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2017-11-20 21:49:19 +0100
committerBram Moolenaar <Bram@vim.org>2017-11-20 21:49:19 +0100
commit73675fbc4810470f8935f05a3c16c14e0d5e737f (patch)
tree54ed1d0e261cac4dc8d916a903cece9690a70871 /src/normal.c
parent5bbef3194984f175eb12b6efaa04c49a42ab58f2 (diff)
downloadvim-git-73675fbc4810470f8935f05a3c16c14e0d5e737f.tar.gz
patch 8.0.1323: mouse events in a terminal window may cause endless loopv8.0.1323
Problem: Mouse events in a terminal window may cause endless loop. Solution: Adjust position computation. Don't stuff a mouse event when coming from normal_cmd().
Diffstat (limited to 'src/normal.c')
-rw-r--r--src/normal.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/normal.c b/src/normal.c
index b385c0d4d..fb0129aec 100644
--- a/src/normal.c
+++ b/src/normal.c
@@ -4633,7 +4633,9 @@ nv_mousescroll(cmdarg_T *cap)
{
# ifdef FEAT_TERMINAL
if (term_use_loop())
- send_keys_to_term(curbuf->b_term, cap->cmdchar, TRUE);
+ /* This window is a terminal window, send the mouse event there.
+ * Set "typed" to FALSE to avoid an endless loop. */
+ send_keys_to_term(curbuf->b_term, cap->cmdchar, FALSE);
else
# endif
if (mod_mask & (MOD_MASK_SHIFT | MOD_MASK_CTRL))