Add missing wl_resource_destroy

Summary:
There are no resource free codes in xdg shell destroy handler
and xdg popup destroy handler. e should delete wayland resource as
client requested.

Test Plan:
1. run e as wayland server
2. run weston-stacking in e
3. click with right mouse button to create xdg popup surface
4. click main surface area to delete xdg popup surface

Reviewers: devilhorns, zmike, raster

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1196
This commit is contained in:
Gwanglim Lee 2014-07-16 10:37:18 -04:00 committed by Chris Michael
parent 7418547f76
commit a96d7290f5
2 changed files with 2 additions and 4 deletions

View File

@ -1562,10 +1562,6 @@ _e_comp_wl_evas_cb_delete_request(void *data, Evas_Object *obj EINA_UNUSED, void
if (!(ec = data)) return;
if (ec->netwm.ping) e_client_ping(ec);
/* if (ec->wl_comp_data->shell.surface) */
/* wl_resource_destroy(ec->wl_comp_data->shell.surface); */
/* FIXME !!!
*
* This is a HUGE problem for internal windows...

View File

@ -655,6 +655,7 @@ _e_xdg_shell_surface_cb_destroy(struct wl_client *client EINA_UNUSED, struct wl_
{
/* eina_stringshare_del(ec->icccm.title); */
/* eina_stringshare_del(ec->icccm.class); */
wl_resource_destroy(ec->wl_comp_data->shell.surface);
ec->wl_comp_data->shell.surface = NULL;
}
}
@ -1303,6 +1304,7 @@ _e_xdg_shell_popup_cb_destroy(struct wl_client *client EINA_UNUSED, struct wl_re
eina_list_remove(ec->parent->transients, ec);
}
wl_resource_destroy(ec->wl_comp_data->shell.surface);
ec->wl_comp_data->shell.surface = NULL;
}
}