diff --git a/thirdparty/README.md b/thirdparty/README.md index b5e95d7371b..b87b668e2d4 100644 --- a/thirdparty/README.md +++ b/thirdparty/README.md @@ -494,7 +494,7 @@ folder. ## wslay - Upstream: https://github.com/tatsuhiro-t/wslay -- Version: 1.1.0 (2018) +- Version: 1.1.1 (2020) - License: MIT File extracted from upstream release tarball: diff --git a/thirdparty/wslay/includes/wslay/wslayver.h b/thirdparty/wslay/includes/wslay/wslayver.h index 2c3e282e9db..28f20180395 100644 --- a/thirdparty/wslay/includes/wslay/wslayver.h +++ b/thirdparty/wslay/includes/wslay/wslayver.h @@ -26,6 +26,6 @@ #define WSLAYVER_H /* Version number of wslay release */ -#define WSLAY_VERSION "1.1.0" +#define WSLAY_VERSION "1.1.1" #endif /* WSLAYVER_H */ diff --git a/thirdparty/wslay/wslay_event.c b/thirdparty/wslay/wslay_event.c index 57415c51e07..140f7c01da0 100644 --- a/thirdparty/wslay/wslay_event.c +++ b/thirdparty/wslay/wslay_event.c @@ -730,11 +730,11 @@ int wslay_event_recv(wslay_event_context_ptr ctx) return r; } } else if(ctx->imsg->opcode == WSLAY_PING) { - struct wslay_event_msg arg; - arg.opcode = WSLAY_PONG; - arg.msg = msg; - arg.msg_length = ctx->imsg->msg_length; - if((r = wslay_event_queue_msg(ctx, &arg)) && + struct wslay_event_msg pong_arg; + pong_arg.opcode = WSLAY_PONG; + pong_arg.msg = msg; + pong_arg.msg_length = ctx->imsg->msg_length; + if((r = wslay_event_queue_msg(ctx, &pong_arg)) && r != WSLAY_ERR_NO_MORE_MSG) { ctx->read_enabled = 0; free(msg); @@ -885,7 +885,7 @@ int wslay_event_send(wslay_event_context_ptr ctx) r = ctx->omsg->read_callback(ctx, ctx->obuf, sizeof(ctx->obuf), &ctx->omsg->source, &eof, ctx->user_data); - if(r == 0) { + if(r == 0 && eof == 0) { break; } else if(r < 0) { ctx->write_enabled = 0;