diff --git a/src/connection.c b/src/connection.c index f86afde81..ad523b960 100644 --- a/src/connection.c +++ b/src/connection.c @@ -573,7 +573,7 @@ int conn_local_send_proxy(struct connection *conn, unsigned int flag) goto out_wait; if (ret < 0) { - if (errno == EAGAIN) + if (errno == EAGAIN || errno == ENOTCONN) goto out_wait; goto out_error; } diff --git a/src/stream_interface.c b/src/stream_interface.c index 33f1d0efc..6a21c641f 100644 --- a/src/stream_interface.c +++ b/src/stream_interface.c @@ -468,7 +468,7 @@ int conn_si_send_proxy(struct connection *conn, unsigned int flag) goto out_wait; if (ret < 0) { - if (errno == EAGAIN) + if (errno == EAGAIN || errno == ENOTCONN) goto out_wait; goto out_error; }