forked from enlightenment/efl
ecore: properly reset fd handler when parent get deleted.
This commit is contained in:
parent
da1506d4e8
commit
ef0df96da1
|
@ -166,6 +166,19 @@ _efl_loop_fd_eo_base_constructor(Eo *obj, Efl_Loop_Fd_Data *pd)
|
|||
return obj;
|
||||
}
|
||||
|
||||
static void
|
||||
_efl_loop_fd_eo_base_parent_set(Eo *obj, Efl_Loop_Fd_Data *pd, Eo_Base *parent)
|
||||
{
|
||||
if (pd->handler) ecore_main_fd_handler_del(pd->handler);
|
||||
pd->handler = NULL;
|
||||
|
||||
eo_parent_set(eo_super(obj, MY_CLASS), parent);
|
||||
|
||||
if (parent == NULL) return ;
|
||||
|
||||
_efl_loop_fd_reset(obj, pd);
|
||||
}
|
||||
|
||||
static void
|
||||
_efl_loop_fd_eo_base_destructor(Eo *obj, Efl_Loop_Fd_Data *pd)
|
||||
{
|
||||
|
|
|
@ -41,5 +41,6 @@ class Efl.Loop.Fd (Efl.Loop_User)
|
|||
implements {
|
||||
Eo.Base.constructor;
|
||||
Eo.Base.destructor;
|
||||
Eo.Base.parent.set;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue