commit ea13dce3bf126690876428bd99f4427fadc8358a
parent 1849cf0e4c4376445ff05b9f7f5604b22ac915ff
Author: zeertzjq <zeertzjq@outlook.com>
Date: Sun, 24 Jul 2022 09:29:28 +0800
fix(mouse): fix using uninitialized memory with K_MOUSEMOVE (#19480)
Fix a mistake in the porting of Vim patch 8.0.1309.
Diffstat:
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/src/nvim/keycodes.c b/src/nvim/keycodes.c
@@ -365,7 +365,7 @@ static struct mousetable {
{ (int)KE_X2DRAG, MOUSE_X2, false, true },
{ (int)KE_X2RELEASE, MOUSE_X2, false, false },
// DRAG without CLICK
- { (int)K_MOUSEMOVE, MOUSE_RELEASE, false, true },
+ { (int)KE_MOUSEMOVE, MOUSE_RELEASE, false, true },
// RELEASE without CLICK
{ (int)KE_IGNORE, MOUSE_RELEASE, false, false },
{ 0, 0, 0, 0 },
diff --git a/test/functional/ui/mouse_spec.lua b/test/functional/ui/mouse_spec.lua
@@ -1590,4 +1590,10 @@ describe('ui/mouse/input', function()
eq(0, meths.get_var('mouse_up3'))
eq(0, meths.get_var('mouse_up4'))
end)
+
+ it('feeding <MouseMove> does not use uninitialized memory #19480', function()
+ feed('<MouseMove>')
+ helpers.poke_eventloop()
+ helpers.assert_alive()
+ end)
end)