user code must explicitly complete http transaction

Signed-off-by: Andy Green <andy.green@linaro.org>
This commit is contained in:
Andy Green 2016-02-24 20:58:19 +08:00
parent 5c0bcf49a8
commit dbfbbb41b1
2 changed files with 12 additions and 1 deletions

View file

@ -17,6 +17,17 @@ known to affect anything until after it was fixed
requests callback on writeable for the socket it will busywait until the
socket closes
5) MAJOR Although the test server has done it for a few versions already, it
is now required for the user code to explicitly call
if (lws_http_transaction_completed(wsi))
return -1;
when it finishes replying to a transaction in http. Previously the library
did it for you, but that disallowed large, long transfers with multiple
trips around the event loop (and cgi...).
Changes
-------

View file

@ -130,7 +130,7 @@ lws_read(struct lws *wsi, unsigned char *buf, size_t len)
switch (wsi->state) {
case LWSS_HTTP:
case LWSS_HTTP_HEADERS:
goto http_complete;
goto read_ok;
case LWSS_HTTP_ISSUING_FILE:
goto read_ok;
case LWSS_HTTP_BODY: