Skip to content
Snippets Groups Projects
Commit f5c0ab13 authored by Andrew Oates's avatar Andrew Oates Committed by Gerd Hoffmann
Browse files

input (curses): mask keycodes to remove modifier bits


Without the mask, control bits are passed on in the keycode, generating
incorrect PS/2 sequences when SHIFT, ALT, etc are held down.

Cc: qemu-stable@nongnu.org
Signed-off-by: default avatarAndrew Oates <andrew@aoates.org>
Signed-off-by: default avatarGerd Hoffmann <kraxel@redhat.com>
parent 178ac111
No related branches found
No related tags found
No related merge requests found
......@@ -288,8 +288,8 @@ static void curses_refresh(DisplayChangeListener *dcl)
qemu_input_event_send_key_number(NULL, GREY | ALT_CODE, true);
}
qemu_input_event_send_key_number(NULL, keycode, true);
qemu_input_event_send_key_number(NULL, keycode, false);
qemu_input_event_send_key_number(NULL, keycode & KEY_MASK, true);
qemu_input_event_send_key_number(NULL, keycode & KEY_MASK, false);
if (keycode & ALTGR) {
qemu_input_event_send_key_number(NULL, GREY | ALT_CODE, false);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment