diff --git a/lib/parsers.c b/lib/parsers.c index 0f4c2c7af..a61c0e207 100644 --- a/lib/parsers.c +++ b/lib/parsers.c @@ -1560,6 +1560,11 @@ lws_issue_raw_ext_access(struct libwebsocket *wsi, debug("written %d bytes to client\n", eff_buf.token_len); + /* no extension has more to spill */ + + if (!ret) + break; + /* we used up what we had */ eff_buf.token = NULL;