diff options
author | emersion <contact@emersion.fr> | 2017-12-14 23:59:04 +0100 |
---|---|---|
committer | emersion <contact@emersion.fr> | 2017-12-14 23:59:04 +0100 |
commit | 6b42bfad18f7bcb08ef031c699159d40ff6ac2a0 (patch) | |
tree | c8c24d5cf48c8a7487499d37da92e1bf7da419b9 /xwayland/xwm.c | |
parent | b884025558e750268a06818dc63bc46716c75843 (diff) | |
parent | 23fb663ea4eaff436d9bfab7f74cdd298fac44c5 (diff) |
Merge branch 'master' into xwm-selection
Diffstat (limited to 'xwayland/xwm.c')
-rw-r--r-- | xwayland/xwm.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/xwayland/xwm.c b/xwayland/xwm.c index c3edebd2..2e859460 100644 --- a/xwayland/xwm.c +++ b/xwayland/xwm.c @@ -1093,6 +1093,12 @@ void xwm_destroy(struct wlr_xwm *xwm) { if (xwm->cursor) { xcb_free_cursor(xwm->xcb_conn, xwm->cursor); } + if (xwm->colormap) { + xcb_free_colormap(xwm->xcb_conn, xwm->colormap); + } + if (xwm->window) { + xcb_destroy_window(xwm->xcb_conn, xwm->window); + } if (xwm->event_source) { wl_event_source_remove(xwm->event_source); } @@ -1100,6 +1106,9 @@ void xwm_destroy(struct wlr_xwm *xwm) { wl_list_for_each_safe(xsurface, tmp, &xwm->surfaces, link) { wlr_xwayland_surface_destroy(xsurface); } + wl_list_for_each_safe(xsurface, tmp, &xwm->unpaired_surfaces, link) { + wlr_xwayland_surface_destroy(xsurface); + } wl_list_remove(&xwm->compositor_surface_create.link); xcb_disconnect(xwm->xcb_conn); |