aboutsummaryrefslogtreecommitdiff
path: root/src/supplemental
diff options
context:
space:
mode:
authorGarrett D'Amore <garrett@damore.org>2019-02-17 22:05:47 -0800
committerGarrett D'Amore <garrett@damore.org>2019-02-17 22:05:47 -0800
commit32e6f3978e18224bf5d6d7a3847ea25140ec6122 (patch)
tree02608109da5fa3fb483c05484b170cfdf3d7f2d4 /src/supplemental
parentc28dac1647cdee4cb1ff2d009551689c1bfd905a (diff)
downloadnng-32e6f3978e18224bf5d6d7a3847ea25140ec6122.tar.gz
nng-32e6f3978e18224bf5d6d7a3847ea25140ec6122.tar.bz2
nng-32e6f3978e18224bf5d6d7a3847ea25140ec6122.zip
fixes #882 websocket stream mode doesn't copy received data
Diffstat (limited to 'src/supplemental')
-rw-r--r--src/supplemental/websocket/websocket.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/supplemental/websocket/websocket.c b/src/supplemental/websocket/websocket.c
index 4cecf430..fcd2eeb3 100644
--- a/src/supplemental/websocket/websocket.c
+++ b/src/supplemental/websocket/websocket.c
@@ -843,6 +843,7 @@ ws_read_finish_str(nni_ws *ws)
// This eats the entire iov.
n = iov->iov_len;
}
+ memcpy(iov->iov_buf, frame->buf, n);
iov->iov_buf = ((uint8_t *) iov->iov_buf) + n;
iov->iov_len -= n;
if (iov->iov_len == 0) {
@@ -2038,7 +2039,7 @@ nni_ws_listener_alloc(nng_stream_listener **wslp, const nng_url *url)
l->fragsize = WS_DEF_MAXTXFRAME;
l->maxframe = WS_DEF_MAXRXFRAME;
l->recvmax = WS_DEF_RECVMAX;
- l->isstream = false;
+ l->isstream = true;
l->ops.sl_free = ws_listener_free;
l->ops.sl_close = ws_listener_close;
l->ops.sl_accept = ws_listener_accept;