wlr_keyboard: don't emit key event for duplicated keycodes

This fixes the memory leak in wlr_keyboard_group.keys. The leak happened
because wlr_keyboard.keycodes never contains duplicated keycodes while
wlr_keyboard_group.keys can, so calling wlr_keyboard_finish() for all
the wlr_keyboards in wlr_keyboard_group doesn't always free all the keys
in wlr_keyboard_group.keys.
This commit is contained in:
tokyo4j 2024-11-19 10:13:23 +09:00 committed by Kirill Primak
parent c0d4d7217b
commit e21899037a
2 changed files with 8 additions and 4 deletions

View file

@ -1,6 +1,6 @@
#include <wlr/types/wlr_keyboard.h>
void keyboard_key_update(struct wlr_keyboard *keyboard,
bool keyboard_key_update(struct wlr_keyboard *keyboard,
struct wlr_keyboard_key_event *event);
bool keyboard_modifier_update(struct wlr_keyboard *keyboard);