svr->event_count = eina_list_append(svr->event_count, e);
_ecore_con_server_timer_update(svr);
- svr->delete_me = EINA_TRUE;
e->server = svr;
if (svr->ecs)
{
cl->event_count = eina_list_append(cl->event_count, e);
cl->host_server->event_count = eina_list_append(cl->host_server->event_count, e);
_ecore_con_cl_timer_update(cl);
- cl->delete_me = EINA_TRUE;
e->client = cl;
if (cl->upgrade) ev = ECORE_CON_EVENT_CLIENT_UPGRADE;
ecore_event_add(ev, e,
if ((!svr->event_count) && (svr->delete_me))
_ecore_con_server_free(svr);
}
- if (!e->client->event_count)
+ if ((!e->client->event_count) && (e->client->delete_me))
ecore_con_client_del(e->client);
}
ecore_con_event_client_del_free(e);
if (e->server)
{
e->server->event_count = eina_list_remove(e->server->event_count, ev);
- if (!e->server->event_count)
+ if ((!e->server->event_count) && (e->server->delete_me))
_ecore_con_server_free(e->server);
}
ecore_con_event_server_del_free(e);