Use libinput_event_destroy/xkb_*_unref

Also sneak in a missing drmModeFreePlaneResources
This commit is contained in:
Dominique Martinet 2017-08-12 00:02:04 +02:00
parent e1293a7853
commit de86965174
3 changed files with 4 additions and 0 deletions

View file

@ -104,6 +104,7 @@ static bool init_planes(struct wlr_backend_state *drm) {
drm->primary_planes = drm->overlay_planes + drm->num_overlay_planes;
drm->cursor_planes = drm->primary_planes + drm->num_primary_planes;
drmModeFreePlaneResources(plane_res);
return true;
error_planes:

View file

@ -33,6 +33,7 @@ static int wlr_libinput_readable(int fd, uint32_t mask, void *_state) {
struct libinput_event *event;
while ((event = libinput_get_event(state->libinput))) {
wlr_libinput_event(state, event);
libinput_event_destroy(event);
}
return 0;
}

View file

@ -311,6 +311,8 @@ static void keyboard_remove(struct wlr_input_device *device, struct compositor_s
if (!kbstate) {
return;
}
xkb_state_unref(kbstate->xkb_state);
xkb_map_unref(kbstate->keymap);
wl_list_remove(&kbstate->link);
wl_list_remove(&kbstate->key.link);
free(kbstate);