diff options
| author | Garrett D'Amore <garrett@damore.org> | 2019-02-17 22:05:47 -0800 |
|---|---|---|
| committer | Garrett D'Amore <garrett@damore.org> | 2019-02-17 22:05:47 -0800 |
| commit | 32e6f3978e18224bf5d6d7a3847ea25140ec6122 (patch) | |
| tree | 02608109da5fa3fb483c05484b170cfdf3d7f2d4 /src/supplemental/websocket | |
| parent | c28dac1647cdee4cb1ff2d009551689c1bfd905a (diff) | |
| download | nng-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/websocket')
| -rw-r--r-- | src/supplemental/websocket/websocket.c | 3 |
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; |
