neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

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:
Msrc/nvim/keycodes.c | 2+-
Mtest/functional/ui/mouse_spec.lua | 6++++++
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)