mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-15 18:40:39 -08:00
Guard terminal parameter in XTerm mouse mode
It has been observed (in the HTerm terminal emulator) that the event stored in the 'xterm-mouse-last-down' terminal parameter gets overwritten during a mouse drag operation, causing Emacs to attempt to synthesize the non-existing <drag-mouse-0> event. Copy the event into the terminal parameter to protect against such modifications. * lisp/xt-mouse.el (xterm-mouse-translate-1): Guard against modification of input event list.
This commit is contained in:
parent
1228055b32
commit
13d468fc07
1 changed files with 5 additions and 1 deletions
|
|
@ -70,7 +70,11 @@ http://invisible-island.net/xterm/ctlseqs/ctlseqs.html)."
|
||||||
(cond
|
(cond
|
||||||
((null event) nil) ;Unknown/bogus byte sequence!
|
((null event) nil) ;Unknown/bogus byte sequence!
|
||||||
(is-down
|
(is-down
|
||||||
(setf (terminal-parameter nil 'xterm-mouse-last-down) event)
|
(setf (terminal-parameter nil 'xterm-mouse-last-down)
|
||||||
|
;; EVENT might be handed back to the input queue, which
|
||||||
|
;; might modify it. Copy it into the terminal parameter
|
||||||
|
;; to guard against that.
|
||||||
|
(copy-sequence event))
|
||||||
vec)
|
vec)
|
||||||
(is-move vec)
|
(is-move vec)
|
||||||
(t
|
(t
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue