From e7c7794cd4d53a319037df1dec26279c5e278188 Mon Sep 17 00:00:00 2001 From: Andy Green Date: Wed, 20 Dec 2017 10:42:31 +0800 Subject: [PATCH] treat write failed as permanently fatal --- lib/service.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/service.c b/lib/service.c index 9dd18979..8a786622 100644 --- a/lib/service.c +++ b/lib/service.c @@ -1452,7 +1452,9 @@ lws_service_fd_tsi(struct lws_context *context, struct lws_pollfd *pollfd, lws_handle_POLLOUT_event(wsi, pollfd)) { if (wsi->state == LWSS_RETURNED_CLOSE_ALREADY) wsi->state = LWSS_FLUSHING_SEND_BEFORE_CLOSE; - lwsl_info("lws_service_fd: closing\n"); + lwsl_notice("lws_service_fd: closing\n"); + /* the write failed... it's had it */ + wsi->socket_is_permanently_unusable = 1; goto close_and_handled; }