msgpack-lite icon indicating copy to clipboard operation
msgpack-lite copied to clipboard

null value is not decoded when using decode stream

Open progrium opened this issue 6 years ago • 1 comments

decoding a whole buffer works fine:

> msgpack.decode(Buffer.from([192]))
null
>

vs

> var decodeStream = msgpack.createDecodeStream();
undefined
> decodeStream.on("data", console.log);
...
> decodeStream.write(Buffer.from([192]))
true
>

The stream is then closed.

progrium avatar Jul 12 '18 17:07 progrium

it occured to me too, where msgpack.encode(null) works but msgpack.createEncodeStream().write(null) throws a error.

TypeError [ERR_STREAM_NULL_VALUES]: May not write null values to stream at validChunk (_stream_writable.js:261:10) at EncodeStream.Writable.write (_stream_writable.js:297:21) at Object.<anonymous> (C:\Users\jim\测试msgpack流.js:9:14) at Module._compile (internal/modules/cjs/loader.js:776:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10) at Module.load (internal/modules/cjs/loader.js:653:32) at tryModuleLoad (internal/modules/cjs/loader.js:593:12) at Function.Module._load (internal/modules/cjs/loader.js:585:3) at Function.Module.runMain (internal/modules/cjs/loader.js:829:12) at startup (internal/bootstrap/node.js:283:19) Emitted 'error' event at: at errorOrDestroy (internal/streams/destroy.js:107:12) at validChunk (_stream_writable.js:266:5) at EncodeStream.Writable.write (_stream_writable.js:297:21) [... lines matching original stack trace ...] at Function.Module.runMain (internal/modules/cjs/loader.js:829:12)

xosg avatar Sep 11 '19 03:09 xosg