Edje: delete real part object after swallows got handled

Case the real part object(rp->object) is an smart object it start to delete
the whole smart object hierarchy and a child object may be a swallow of this
real part. So just delete the rp->object after swallows got handled.


SVN revision: 81403
This commit is contained in:
Leandro Dorileo 2012-12-19 20:09:41 +00:00
parent 1bcae8fdd4
commit 3a22bb3d5b
1 changed files with 8 additions and 6 deletions

View File

@ -1314,12 +1314,7 @@ _edje_file_del(Edje *ed)
if (rp->part->entry_mode > EDJE_ENTRY_EDIT_MODE_NONE)
_edje_entry_real_part_shutdown(rp);
if (rp->object)
{
_edje_callbacks_del(rp->object, ed);
_edje_callbacks_focus_del(rp->object, ed);
evas_object_del(rp->object);
}
if ((rp->type == EDJE_RP_TYPE_CONTAINER) &&
(rp->typedata.container))
{
@ -1368,6 +1363,13 @@ _edje_file_del(Edje *ed)
free(rp->typedata.swallow);
}
if (rp->object)
{
_edje_callbacks_del(rp->object, ed);
_edje_callbacks_focus_del(rp->object, ed);
evas_object_del(rp->object);
}
if (rp->custom)
{
// xxx: lua2