remove double free attempts from no ACCEPT server response cleanup path
The generic wsi close code is smart enough to clean up after these allocations itself Signed-off-by: Andy Green <andy.green@linaro.org>
This commit is contained in:
parent
53ebe46d75
commit
6d5143548d
1 changed files with 8 additions and 12 deletions
20
lib/client.c
20
lib/client.c
|
@ -516,18 +516,18 @@ lws_client_interpret_server_handshake(struct libwebsocket_context *context,
|
|||
* Now let's confirm it sent all the necessary headers
|
||||
*/
|
||||
|
||||
if (lws_hdr_total_length(wsi, WSI_TOKEN_ACCEPT) == 0) {
|
||||
lwsl_info("no ACCEPT\n");
|
||||
p = lws_hdr_simple_ptr(wsi, WSI_TOKEN_HTTP);
|
||||
isErrorCodeReceived = 1;
|
||||
goto bail3;
|
||||
}
|
||||
|
||||
p = lws_hdr_simple_ptr(wsi, WSI_TOKEN_HTTP);
|
||||
if (!p) {
|
||||
lwsl_info("no URI\n");
|
||||
goto bail3;
|
||||
}
|
||||
|
||||
if (lws_hdr_total_length(wsi, WSI_TOKEN_ACCEPT) == 0) {
|
||||
lwsl_info("no ACCEPT\n");
|
||||
isErrorCodeReceived = 1;
|
||||
goto bail3;
|
||||
}
|
||||
|
||||
if (p && strncmp(p, "101", 3)) {
|
||||
lwsl_warn(
|
||||
"lws_client_handshake: got bad HTTP response '%s'\n", p);
|
||||
|
@ -805,7 +805,6 @@ check_accept:
|
|||
return 0;
|
||||
|
||||
bail3:
|
||||
lws_free2(wsi->u.ws.rx_user_buffer);
|
||||
close_reason = LWS_CLOSE_STATUS_NOSTATUS;
|
||||
|
||||
bail2:
|
||||
|
@ -823,10 +822,7 @@ bail2:
|
|||
|
||||
lwsl_info("closing connection due to bail2 connection error\n");
|
||||
|
||||
/* free up his parsing allocations */
|
||||
|
||||
lws_free2(wsi->u.hdr.ah);
|
||||
|
||||
/* closing will free up his parsing allocations */
|
||||
libwebsocket_close_and_free_session(context, wsi, close_reason);
|
||||
|
||||
return 1;
|
||||
|
|
Loading…
Add table
Reference in a new issue