ah try for ah when adopting socket to vhost

https://github.com/warmcat/libwebsockets/issues/496

Even if no ah available, we will be on the ah waiting list and get triggered
when one is freed and we're next in line.

Signed-off-by: Andy Green <andy@warmcat.com>
This commit is contained in:
Andy Green 2016-04-19 10:10:53 +08:00
parent 5f947cdcd9
commit 912c42f291

View file

@ -1200,6 +1200,9 @@ lws_adopt_socket_vhost(struct lws_vhost *vh, lws_sockfd_type accept_fd)
}
}
if (!lws_header_table_attach(new_wsi, 0))
lwsl_debug("Attached ah immediately\n");
return new_wsi;
fail:
@ -1279,7 +1282,7 @@ lws_adopt_socket_readbuf(struct lws_context *context, lws_sockfd_type accept_fd,
* readbuf data to wsi or ah yet, and we will do it next if we get
* the ah.
*/
if (!lws_header_table_attach(wsi, 0)) {
if (wsi->u.hdr.ah || !lws_header_table_attach(wsi, 0)) {
ah = wsi->u.hdr.ah;
memcpy(ah->rx, readbuf, len);
ah->rxpos = 0;