diff --git a/src/lib/efl_wl/efl_wl.c b/src/lib/efl_wl/efl_wl.c index 2bdb222501..9eec04e916 100644 --- a/src/lib/efl_wl/efl_wl.c +++ b/src/lib/efl_wl/efl_wl.c @@ -2301,6 +2301,12 @@ comp_surface_smart_del(Evas_Object *obj) } evas_object_del(cs->img); evas_object_del(cs->clip); + if (cs->shell.surface) + { + if (cs->role) + wl_resource_destroy(cs->role); + wl_resource_destroy(cs->shell.surface); + } cs->c->surfaces = eina_inlist_remove(cs->c->surfaces, EINA_INLIST_GET(cs)); cs->c->surfaces_count--; free(cs);