summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaiki Ueno <ueno@gnu.org>2021-01-18 06:34:52 +0000
committerDaiki Ueno <ueno@gnu.org>2021-01-18 06:34:52 +0000
commitcf18947ba079f9a4649a803f53d0400688931e77 (patch)
tree142ae65b3b2a8dd29093a291c3f359715f6ef90d
parent14f54287535ea3b5914638843710a8cef7b68e68 (diff)
parentd41c8e44b12222a290eaca16703406b113a630c6 (diff)
downloadcaribou-cf18947ba079f9a4649a803f53d0400688931e77.tar.gz
Merge branch 'fix-segfault' into 'master'
Fix segfault with recent versions of Xorg See merge request GNOME/caribou!3
-rw-r--r--libcaribou/xadapter.vala9
1 files changed, 2 insertions, 7 deletions
diff --git a/libcaribou/xadapter.vala b/libcaribou/xadapter.vala
index 22858b7..1da5a78 100644
--- a/libcaribou/xadapter.vala
+++ b/libcaribou/xadapter.vala
@@ -195,15 +195,10 @@ namespace Caribou {
Xkb.MapChanges changes = Xkb.MapChanges ();
- // We don't touch key types here but include the
- // information in XkbSetMap request to the server, because
- // some X servers need the information to check the sanity
- // of the keysyms change.
- changes.changed = (ushort) (Xkb.KeySymsMask | Xkb.KeyTypesMask);
+ changes.changed = (ushort) Xkb.KeySymsMask;
changes.first_key_sym = (char) this.reserved_keycode;
changes.num_key_syms = this.xkbdesc.map.key_sym_map[this.reserved_keycode].width;
- changes.first_type = 0;
- changes.num_types = this.xkbdesc.map.num_types;
+
Xkb.change_map (this.xdisplay, this.xkbdesc, changes);
this.xdisplay.flush ();