aboutsummaryrefslogtreecommitdiff
path: root/examples/rotation.c
diff options
context:
space:
mode:
authorsghctoma <sghctoma@gmail.com>2018-09-07 15:45:20 +0200
committersghctoma <sghctoma@gmail.com>2018-09-07 15:45:20 +0200
commitbbeed1bd3179a082b5bfb04010e6c476e75e4320 (patch)
tree3042498f064af4c4517bf66798caa607ebbd759a /examples/rotation.c
parentd948bffd3e7b283870dcbd7f1a5dd2aaea1950ec (diff)
parent085142ba346e0b8dd1a9b1a969a37156cf5656c1 (diff)
Merge remote-tracking branch 'upstream/master' into fix-freebsd-direct-session
Diffstat (limited to 'examples/rotation.c')
-rw-r--r--examples/rotation.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/examples/rotation.c b/examples/rotation.c
index add7f42f..7cf5727b 100644
--- a/examples/rotation.c
+++ b/examples/rotation.c
@@ -188,8 +188,14 @@ void new_input_notify(struct wl_listener *listener, void *data) {
wlr_log(WLR_ERROR, "Failed to create XKB context");
exit(1);
}
- wlr_keyboard_set_keymap(device->keyboard, xkb_map_new_from_names(context,
- &rules, XKB_KEYMAP_COMPILE_NO_FLAGS));
+ struct xkb_keymap *keymap = xkb_map_new_from_names(context, &rules,
+ XKB_KEYMAP_COMPILE_NO_FLAGS);
+ if (!keymap) {
+ wlr_log(WLR_ERROR, "Failed to create XKB keymap");
+ exit(1);
+ }
+ wlr_keyboard_set_keymap(device->keyboard, keymap);
+ xkb_keymap_unref(keymap);
xkb_context_unref(context);
break;
default: