Merge pull request #260 from versusvoid/fix-accessing-freed-client

Destroy surfaces on client destruction (XDG shell)
This commit is contained in:
Drew DeVault 2017-10-11 09:08:39 -04:00 committed by GitHub
commit f73cb2aa1f

View file

@ -1147,8 +1147,7 @@ static void wlr_xdg_client_v6_destroy(struct wl_resource *resource) {
struct wlr_xdg_surface_v6 *surface, *tmp = NULL; struct wlr_xdg_surface_v6 *surface, *tmp = NULL;
wl_list_for_each_safe(surface, tmp, &client->surfaces, link) { wl_list_for_each_safe(surface, tmp, &client->surfaces, link) {
wl_list_remove(&surface->link); xdg_surface_destroy(surface);
wl_list_init(&surface->link);
} }
if (client->ping_timer != NULL) { if (client->ping_timer != NULL) {