diff options
author | Drew DeVault <sir@cmpwn.com> | 2017-10-11 09:08:39 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-10-11 09:08:39 -0400 |
commit | f73cb2aa1fbaf6c7cd937376edaa0128974228f3 (patch) | |
tree | 293af6e67971ab2e6232e7e1516ee66c386c63df | |
parent | bf5299a3a55040d8593c87d02bec364784c2c911 (diff) | |
parent | 508a21f93e7eeaafb9328d0e43d0e1e0f02ca5a1 (diff) |
Merge pull request #260 from versusvoid/fix-accessing-freed-client
Destroy surfaces on client destruction (XDG shell)
-rw-r--r-- | types/wlr_xdg_shell_v6.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/types/wlr_xdg_shell_v6.c b/types/wlr_xdg_shell_v6.c index a16d3319..3f5f22a0 100644 --- a/types/wlr_xdg_shell_v6.c +++ b/types/wlr_xdg_shell_v6.c @@ -1147,8 +1147,7 @@ static void wlr_xdg_client_v6_destroy(struct wl_resource *resource) { struct wlr_xdg_surface_v6 *surface, *tmp = NULL; wl_list_for_each_safe(surface, tmp, &client->surfaces, link) { - wl_list_remove(&surface->link); - wl_list_init(&surface->link); + xdg_surface_destroy(surface); } if (client->ping_timer != NULL) { |