ecore_ipc: close dialer io closer when dialer is deleted.

Summary:
dialer uses copier class, so dialer's close on invalidate flag is EINA_FALSE.
Therefore dialer io closer is not closed automatically.

Reviewers: barbieri, raster, Hermet, zmike

Reviewed By: zmike

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8922
This commit is contained in:
Hosang Kim 2019-05-22 08:01:58 -04:00 committed by Mike Blumenkrantz
parent 8db978aa4c
commit 020a59b0f2
1 changed files with 6 additions and 0 deletions

View File

@ -539,6 +539,8 @@ ecore_ipc_server_add(Ecore_Ipc_Type type, const char *name, int port, const void
return NULL;
}
static Efl_Callback_Array_Item *_ecore_ipc_dialer_cbs(void);
static void
_ecore_ipc_dialer_del(Ecore_Ipc_Server *svr)
{
@ -564,6 +566,10 @@ _ecore_ipc_dialer_del(Ecore_Ipc_Server *svr)
if (svr->dialer.dialer)
{
efl_event_callback_array_del(svr->dialer.dialer, _ecore_ipc_dialer_cbs(), svr);
if (!efl_io_closer_closed_get(svr->dialer.dialer))
efl_io_closer_close(svr->dialer.dialer);
efl_del(svr->dialer.dialer);
svr->dialer.dialer = NULL;
}