aboutsummaryrefslogtreecommitdiff
path: root/backend/libinput/backend.c
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2017-08-11 15:12:01 -0400
committerGitHub <noreply@github.com>2017-08-11 15:12:01 -0400
commit65a899924221c3104800a8676852b34b0cd7223d (patch)
treee99e8e2f8712908043ad2369b3012328dc74af43 /backend/libinput/backend.c
parentce65a0c13821279e6f090c315e7a8a331fecc35b (diff)
parentc42674bc2527b9c928bace0a0618723dc63b53bc (diff)
Merge pull request #73 from martinetd/fix_libinput
Fix libinput destroy for devices with multiple capabilities
Diffstat (limited to 'backend/libinput/backend.c')
-rw-r--r--backend/libinput/backend.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/backend/libinput/backend.c b/backend/libinput/backend.c
index 8c1c305d..19fe8fe7 100644
--- a/backend/libinput/backend.c
+++ b/backend/libinput/backend.c
@@ -81,15 +81,15 @@ static void wlr_libinput_backend_destroy(struct wlr_backend_state *state) {
if (!state) {
return;
}
-
for (size_t i = 0; i < state->devices->length; i++) {
- struct wlr_input_device *wlr_device = state->devices->items[i];
-
- wlr_input_device_destroy(wlr_device);
+ list_t *wlr_devices = state->devices->items[i];
+ for (size_t j = 0; j < wlr_devices->length; j++) {
+ wlr_input_device_destroy(wlr_devices->items[j]);
+ }
+ list_free(wlr_devices);
}
list_free(state->devices);
libinput_unref(state->libinput);
-
free(state);
}