diff options
author | Hosang Kim <hosang12.kim@samsung.com> | 2019-05-22 08:01:58 -0400 |
---|---|---|
committer | Mike Blumenkrantz <zmike@samsung.com> | 2019-05-22 08:01:58 -0400 |
commit | 020a59b0f231fc0e2e526a87385bcb5ba3990e69 (patch) | |
tree | ec5e3459ba49a5fc36a5a77a7f020024a85c84d4 | |
parent | 8db978aa4cf216632581c629053fb90ed16de33d (diff) | |
download | efl-020a59b0f231fc0e2e526a87385bcb5ba3990e69.tar.gz |
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
-rw-r--r-- | src/lib/ecore_ipc/ecore_ipc.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/lib/ecore_ipc/ecore_ipc.c b/src/lib/ecore_ipc/ecore_ipc.c index 97b263784b..f6f7fee463 100644 --- a/src/lib/ecore_ipc/ecore_ipc.c +++ b/src/lib/ecore_ipc/ecore_ipc.c @@ -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; } |