chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
3125b3e
)
terminal: free xkb state on keyboard destruction
author
David Herrmann
<dh.herrmann@gmail.com>
Thu, 28 Aug 2014 10:21:33 +0000
(12:21 +0200)
committer
David Herrmann
<dh.herrmann@gmail.com>
Thu, 28 Aug 2014 10:45:51 +0000
(12:45 +0200)
Fix leaking the xkb-state during keyboard destruction, leaking lots of xkb
references into the wild.
src/libsystemd-terminal/idev-keyboard.c
patch
|
blob
|
history
diff --git
a/src/libsystemd-terminal/idev-keyboard.c
b/src/libsystemd-terminal/idev-keyboard.c
index 7ab4db2cf79ed8ec71af8a25279cd76ae731ddf9..03f54bb74f32c6ad94432c2a19666157dfd47e2b 100644
(file)
--- a/
src/libsystemd-terminal/idev-keyboard.c
+++ b/
src/libsystemd-terminal/idev-keyboard.c
@@
-550,6
+550,7
@@
int idev_keyboard_new(idev_device **out, idev_session *s, const char *name) {
static void keyboard_free(idev_device *d) {
idev_keyboard *k = keyboard_from_device(d);
+ xkb_state_unref(k->xkb_state);
free(k->repdata.keyboard.codepoints);
free(k->repdata.keyboard.keysyms);
free(k->evdata.keyboard.codepoints);