From 303556ac2a9320d85a11cd8fa18d5dd00455e78c Mon Sep 17 00:00:00 2001 From: Rui Matos Date: Fri, 15 Jan 2016 18:35:25 +0100 Subject: [PATCH] wayland: Fix an endless loop --- gdk/wayland/gdkdevice-wayland.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gdk/wayland/gdkdevice-wayland.c b/gdk/wayland/gdkdevice-wayland.c index f0836cddaa..a4edcbf63d 100644 --- a/gdk/wayland/gdkdevice-wayland.c +++ b/gdk/wayland/gdkdevice-wayland.c @@ -2674,11 +2674,11 @@ _gdk_wayland_device_manager_remove_seat (GdkDeviceManager *manager, guint32 id) { GdkDisplay *display = gdk_device_manager_get_display (manager); - GList *l; + GList *l, *seats; - l = gdk_display_list_seats (display); + seats = gdk_display_list_seats (display); - while (l) + for (l = seats; l != NULL; l = l->next) { GdkWaylandSeat *seat = l->data; @@ -2688,6 +2688,8 @@ _gdk_wayland_device_manager_remove_seat (GdkDeviceManager *manager, gdk_display_remove_seat (display, GDK_SEAT (seat)); break; } + + g_list_free (seats); } static void