Gregory Junker <ggjunker@gmail.com> noticed the binary flag is not
getting set right, or at all on client side. This should improve
matters.
Signed-off-by: Andy Green <andy.green@linaro.org>
wsi->opcode = c & 0xf;
wsi->rsv = (c & 0x70);
wsi->final = !!((c >> 7) & 1);
-
+ switch (wsi->opcode) {
+ case LWS_WS_OPCODE_07__TEXT_FRAME:
+ wsi->frame_is_binary = 0;
+ break;
+ case LWS_WS_OPCODE_07__BINARY_FRAME:
+ wsi->frame_is_binary = 1;
+ break;
+ }
wsi->lws_rx_parse_state = LWS_RXPS_04_FRAME_HDR_LEN;
break;
wsi->opcode = c & 0xf;
wsi->rsv = (c & 0x70);
wsi->final = !!((c >> 7) & 1);
-
+ switch (wsi->opcode) {
+ case LWS_WS_OPCODE_07__TEXT_FRAME:
+ wsi->frame_is_binary = 0;
+ break;
+ case LWS_WS_OPCODE_07__BINARY_FRAME:
+ wsi->frame_is_binary = 1;
+ break;
+ }
wsi->lws_rx_parse_state = LWS_RXPS_04_FRAME_HDR_LEN;
break;
case LWS_WS_OPCODE_07__TEXT_FRAME:
case LWS_WS_OPCODE_07__BINARY_FRAME:
- wsi->frame_is_binary = wsi->opcode == LWS_WS_OPCODE_07__BINARY_FRAME;
case LWS_WS_OPCODE_07__CONTINUATION:
break;