From 021d4fb90820789b4697a02de8abb3c113582ca5 Mon Sep 17 00:00:00 2001 From: Andy Green Date: Tue, 23 Feb 2016 19:43:21 +0800 Subject: [PATCH] client callback closed if not upgraded https://github.com/warmcat/libwebsockets/issues/437 Signed-off-by: Andy Green --- lib/libwebsockets.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/libwebsockets.c b/lib/libwebsockets.c index 5217265e01..1b3e3df7ca 100644 --- a/lib/libwebsockets.c +++ b/lib/libwebsockets.c @@ -372,7 +372,8 @@ lws_close_free_wsi(struct lws *wsi, enum lws_close_status reason) ((wsi->state_pre_close == LWSS_ESTABLISHED) || (wsi->state_pre_close == LWSS_RETURNED_CLOSE_ALREADY) || (wsi->state_pre_close == LWSS_AWAITING_CLOSE_ACK) || - (wsi->state_pre_close == LWSS_FLUSHING_STORED_SEND_BEFORE_CLOSE))) { + (wsi->state_pre_close == LWSS_FLUSHING_STORED_SEND_BEFORE_CLOSE) || + (wsi->mode == LWSCM_WS_CLIENT && wsi->state == LWSS_HTTP))) { lwsl_debug("calling back CLOSED\n"); wsi->protocol->callback(wsi, LWS_CALLBACK_CLOSED, wsi->user_space, NULL, 0);