From: Andy Green Date: Wed, 28 Jun 2017 06:27:09 +0000 (+0800) Subject: file serve: defer transaction completed to HTTP_FILE_COMPLETION X-Git-Tag: accepted/tizen/4.0/unified/20171012.191640~61 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fupstream%2Flibwebsockets.git;a=commitdiff_plain;h=a637d8f41f520d33356d16b9946d58b0073fdc12 file serve: defer transaction completed to HTTP_FILE_COMPLETION --- diff --git a/lib/server.c b/lib/server.c index 76c914c..3bfd1de 100644 --- a/lib/server.c +++ b/lib/server.c @@ -2379,12 +2379,15 @@ try_pollout: break; } - /* >0 == completion, <0 == error */ + /* >0 == completion, <0 == error + * + * We'll get a LWS_CALLBACK_HTTP_FILE_COMPLETION callback when + * it's done. That's the case even if we just completed the + * send, so wait for that. + */ n = lws_serve_http_file_fragment(wsi); - if (n < 0 || (n > 0 && lws_http_transaction_completed(wsi))) { - lwsl_info("completed\n"); + if (n < 0) goto fail; - } break;