summaryrefslogtreecommitdiff
path: root/src/lib/ecore_con/ecore_con.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/ecore_con/ecore_con.c')
-rw-r--r--src/lib/ecore_con/ecore_con.c29
1 files changed, 18 insertions, 11 deletions
diff --git a/src/lib/ecore_con/ecore_con.c b/src/lib/ecore_con/ecore_con.c
index a396fa9ae8..d8dbd37a58 100644
--- a/src/lib/ecore_con/ecore_con.c
+++ b/src/lib/ecore_con/ecore_con.c
@@ -73,7 +73,7 @@ static int _ecore_con_init_count = 0;
int _ecore_con_log_dom = -1;
Eina_Bool _efl_net_proxy_helper_can_do (void);
-int _efl_net_proxy_helper_url_req_send(const char *url);
+int _efl_net_proxy_helper_url_req_send(const char *url, Ecore_Thread *eth);
char **_efl_net_proxy_helper_url_wait (int id);
void _efl_net_proxy_helper_init (void);
void _efl_net_proxy_helper_shutdown (void);
@@ -89,14 +89,17 @@ ecore_con_init(void)
return --_ecore_con_init_count;
#endif
- if (!ecore_init())
- goto ecore_err;
+ if (!eina_init())
+ goto eina_err;
_ecore_con_log_dom = eina_log_domain_register
("ecore_con", ECORE_CON_DEFAULT_LOG_COLOR);
if (_ecore_con_log_dom < 0)
goto ecore_con_log_error;
+ if (!ecore_init())
+ goto ecore_err;
+
_efl_net_proxy_helper_init();
ecore_con_mempool_init();
@@ -125,7 +128,9 @@ ecore_con_log_error:
EINA_LOG_ERR("Failed to create a log domain for Ecore Con.");
ecore_shutdown();
-ecore_err:
+ ecore_err:
+ eina_shutdown();
+ eina_err:
#ifdef _WIN32
evil_shutdown();
#endif
@@ -152,14 +157,16 @@ ecore_con_shutdown(void)
ecore_con_legacy_shutdown();
- eina_log_domain_unregister(_ecore_con_log_dom);
- _ecore_con_log_dom = -1;
-
ecore_shutdown();
#ifdef _WIN32
evil_shutdown();
#endif
+ eina_log_domain_unregister(_ecore_con_log_dom);
+ _ecore_con_log_dom = -1;
+
+ eina_shutdown();
+
return _ecore_con_init_count;
}
@@ -2031,7 +2038,7 @@ _efl_net_ip_connect_async_run_socks5h(Efl_Net_Ip_Connect_Async_Data *d, const ch
}
static void
-_efl_net_ip_connect_async_run(void *data, Ecore_Thread *thread EINA_UNUSED)
+_efl_net_ip_connect_async_run(void *data, Ecore_Thread *thread)
{
Efl_Net_Ip_Connect_Async_Data *d = data;
const char *host, *port, *proxy;
@@ -2069,7 +2076,7 @@ _efl_net_ip_connect_async_run(void *data, Ecore_Thread *thread EINA_UNUSED)
}
else
{
- proxies = ecore_con_libproxy_proxies_get(url);
+ proxies = ecore_con_libproxy_proxies_get(url, thread);
eina_stringshare_del(url);
}
}
@@ -2571,9 +2578,9 @@ efl_net_udp_datagram_size_query(SOCKET fd)
}
char **
-ecore_con_libproxy_proxies_get(const char *url)
+ecore_con_libproxy_proxies_get(const char *url, Ecore_Thread *eth)
{
- int id = _efl_net_proxy_helper_url_req_send(url);
+ int id = _efl_net_proxy_helper_url_req_send(url, eth);
if (id < 0) return NULL;
return _efl_net_proxy_helper_url_wait(id);
}