forked from enlightenment/efl
ecore_con: handle timeout of the attempt to connect.
This has been the fix that prevent random ecore_con DNS tests to fail for me. This should also in case of failure make the timeout of the ecore_con itself be honored which wasn't anymore. @fix Differential Revision: https://phab.enlightenment.org/D7402
This commit is contained in:
parent
913ea32a7a
commit
67993500da
|
@ -1341,13 +1341,19 @@ _ecore_con_server_dialer_error(void *data, const Efl_Event *event)
|
|||
{
|
||||
Ecore_Con_Server *svr = data;
|
||||
Eina_Error *perr = event->info;
|
||||
static int nested = EINA_FALSE;
|
||||
|
||||
if (svr->delete_me) return;
|
||||
if (nested) return;
|
||||
|
||||
nested = EINA_TRUE;
|
||||
|
||||
WRN("error reaching server %s: %s", efl_net_dialer_address_dial_get(svr->dialer), eina_error_msg_get(*perr));
|
||||
|
||||
if (_ecore_con_post_event_server_error(svr, eina_error_msg_get(*perr)))
|
||||
_ecore_con_server_dialer_close(svr);
|
||||
|
||||
nested = EINA_FALSE;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -1413,6 +1419,7 @@ EFL_CALLBACKS_ARRAY_DEFINE(_ecore_con_server_dialer_cbs,
|
|||
{ EFL_IO_BUFFERED_STREAM_EVENT_SLICE_CHANGED, _ecore_con_server_dialer_slice_changed },
|
||||
{ EFL_IO_BUFFERED_STREAM_EVENT_READ_FINISHED, _ecore_con_server_dialer_read_finished },
|
||||
{ EFL_IO_BUFFERED_STREAM_EVENT_FINISHED, _ecore_con_server_dialer_finished },
|
||||
{ EFL_IO_BUFFERED_STREAM_EVENT_ERROR, _ecore_con_server_dialer_error },
|
||||
{ EFL_NET_DIALER_EVENT_ERROR, _ecore_con_server_dialer_error },
|
||||
{ EFL_NET_DIALER_EVENT_RESOLVED, _ecore_con_server_dialer_resolved },
|
||||
{ EFL_NET_DIALER_EVENT_CONNECTED, _ecore_con_server_dialer_connected });
|
||||
|
|
|
@ -41,7 +41,6 @@ _efl_net_dialer_simple_inner_io_error(void *data, const Efl_Event *event)
|
|||
{
|
||||
Eo *o = data;
|
||||
efl_event_callback_call(o, EFL_NET_DIALER_EVENT_ERROR, event->info);
|
||||
efl_event_callback_call(o, EFL_IO_BUFFERED_STREAM_EVENT_ERROR, event->info);
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
Loading…
Reference in New Issue