diff options
author | Gustavo Sverzut Barbieri <barbieri@profusion.mobi> | 2016-09-12 13:21:20 -0300 |
---|---|---|
committer | Gustavo Sverzut Barbieri <barbieri@profusion.mobi> | 2016-09-12 13:21:20 -0300 |
commit | bda935c304a3dee7ca4107a5579253a11635120e (patch) | |
tree | 7edbbeb4bc6988dfff260bf35ad55b3aae2737f9 | |
parent | 704d0818d7f8e0676844ea47647cee868cd6ba90 (diff) | |
download | efl-bda935c304a3dee7ca4107a5579253a11635120e.tar.gz |
efl_net_dialer_tcp: emit EOS on errors.
I/O copier and others may depend on end-of-stream to stop processing,
then emit the EOS on failures.
-rw-r--r-- | src/lib/ecore_con/efl_net_dialer_tcp.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/lib/ecore_con/efl_net_dialer_tcp.c b/src/lib/ecore_con/efl_net_dialer_tcp.c index a44be53ab1..c5ce629362 100644 --- a/src/lib/ecore_con/efl_net_dialer_tcp.c +++ b/src/lib/ecore_con/efl_net_dialer_tcp.c @@ -2,6 +2,7 @@ #define EFL_NET_DIALER_PROTECTED 1 #define EFL_NET_SOCKET_FD_PROTECTED 1 #define EFL_NET_SOCKET_PROTECTED 1 +#define EFL_IO_READER_PROTECTED 1 #ifdef HAVE_CONFIG_H # include <config.h> @@ -104,6 +105,7 @@ _efl_net_dialer_tcp_connected(void *data, const struct sockaddr *addr EINA_UNUSE { freeaddrinfo(pd->resolve.names); pd->resolve.names = NULL; + efl_io_reader_eos_set(o, EINA_TRUE); if (err) efl_event_callback_call(o, EFL_NET_DIALER_EVENT_ERROR, &err); else @@ -170,6 +172,7 @@ _efl_net_dialer_tcp_resolved(void *data, const char *host EINA_UNUSED, const cha if (gai_error) { Eina_Error err = EFL_NET_DIALER_ERROR_COULDNT_RESOLVE_HOST; + efl_io_reader_eos_set(o, EINA_TRUE); efl_event_callback_call(o, EFL_NET_DIALER_EVENT_ERROR, &err); if (result) freeaddrinfo(result); return; |