summaryrefslogtreecommitdiff
path: root/src/lib/ecore_con/efl_net_server_ssl.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/ecore_con/efl_net_server_ssl.c')
-rw-r--r--src/lib/ecore_con/efl_net_server_ssl.c18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/lib/ecore_con/efl_net_server_ssl.c b/src/lib/ecore_con/efl_net_server_ssl.c
index 0cf56cf8e8..1e9a6482ff 100644
--- a/src/lib/ecore_con/efl_net_server_ssl.c
+++ b/src/lib/ecore_con/efl_net_server_ssl.c
@@ -89,7 +89,7 @@ _efl_net_server_ssl_efl_net_server_fd_client_add(Eo *o, Efl_Net_Server_Ssl_Data
client_tcp = efl_add(EFL_NET_SOCKET_TCP_CLASS, o,
efl_io_closer_close_on_exec_set(efl_added, efl_net_server_fd_close_on_exec_get(o)),
- efl_io_closer_close_on_destructor_set(efl_added, EINA_TRUE),
+ efl_io_closer_close_on_invalidate_set(efl_added, EINA_TRUE),
efl_loop_fd_set(efl_added, client_fd));
if (!client_tcp)
{
@@ -149,14 +149,16 @@ _efl_net_server_ssl_ctx_del(void *data, const Efl_Event *event EINA_UNUSED)
}
EOLIAN void
-_efl_net_server_ssl_efl_object_destructor(Eo *o, Efl_Net_Server_Ssl_Data *pd)
+_efl_net_server_ssl_efl_object_invalidate(Eo *o, Efl_Net_Server_Ssl_Data *pd)
{
- if (pd->server)
- {
- efl_del(pd->server);
- pd->server = NULL;
- }
+ pd->server = NULL;
+
+ efl_invalidate(efl_super(o, MY_CLASS));
+}
+EOLIAN void
+_efl_net_server_ssl_efl_object_destructor(Eo *o, Efl_Net_Server_Ssl_Data *pd)
+{
if (pd->ssl_ctx)
{
efl_event_callback_del(pd->ssl_ctx, EFL_EVENT_DEL, _efl_net_server_ssl_ctx_del, o);
@@ -180,7 +182,7 @@ _efl_net_server_ssl_ssl_context_set(Eo *o EINA_UNUSED, Efl_Net_Server_Ssl_Data *
}
EOLIAN static Eo *
-_efl_net_server_ssl_ssl_context_get(Eo *o EINA_UNUSED, Efl_Net_Server_Ssl_Data *pd)
+_efl_net_server_ssl_ssl_context_get(const Eo *o EINA_UNUSED, Efl_Net_Server_Ssl_Data *pd)
{
return pd->ssl_ctx;
}