Don't pass invalid keyboard modifiers to the event loop on Haiku

* src/haikuterm.c (haiku_read_socket): Ensure validity of extra
keyboard modifiers.
This commit is contained in:
Po Lu 2022-02-22 01:33:56 +00:00
parent 8e90216389
commit 993e8b010c

View file

@ -2703,7 +2703,13 @@ haiku_read_socket (struct terminal *terminal, struct input_event *hold_quit)
inev.timestamp = b->time / 1000;
inev.modifiers = (haiku_modifiers_to_emacs (b->modifiers)
| extra_keyboard_modifiers);
| (extra_keyboard_modifiers
& (meta_modifier
| hyper_modifier
| ctrl_modifier
| alt_modifier
| shift_modifier)));
XSETFRAME (inev.frame_or_window, f);
break;
}