unpack return corrupt result with `v1.7.1` + `{bundleStrings: true}` + large array
panmenghan opened this issue · comments
// v1.7.1
import {Unpackr, Packr} from 'msgpackr'
const MSGPACK_OPTIONS = {bundleStrings: true}
const packer = new Packr(MSGPACK_OPTIONS)
const unpacker = new Unpackr(MSGPACK_OPTIONS)
const payload = {
output: [
{
url: 'https://www.example.com/',
},
],
}
for (let i = 0; i < 10_000; i++) {
payload.output.push(payload.output[0])
}
console.log(unpacker.unpack(packer.pack(payload)))
print this result:
{
'\x00': [
{ url: '' }, { url: '' }, { url: '' }, { url: '' }, { url: '' },
{ url: '' }, { url: '' }, { url: '' }, { url: '' }, { url: '' },
{ url: '' }, { url: '' }, { url: '' }, { url: '' }, { url: '' },
{ url: '' }, { url: '' }, { url: '' }, { url: '' }, { url: '' },
{ url: '' }, { url: '' }, { url: '' }, { url: '' }, { url: '' },
{ url: '' }, { url: '' }, { url: '' }, { url: '' }, { url: '' },
{ url: '' }, { url: '' }, { url: '' }, { url: '' }, { url: '' },
{ url: '' }, { url: '' }, { url: '' }, { url: '' }, { url: '' },
{ url: '' }, { url: '' }, { url: '' }, { url: '' }, { url: '' },
{ url: '' }, { url: '' }, { url: '' }, { url: '' }, { url: '' },
{ url: '' }, { url: '' }, { url: '' }, { url: '' }, { url: '' },
{ url: '' }, { url: '' }, { url: '' }, { url: '' }, { url: '' },
{ url: '' }, { url: '' }, { url: '' }, { url: '' }, { url: '' },
{ url: '' }, { url: '' }, { url: '' }, { url: '' }, { url: '' },
{ url: '' }, { url: '' }, { url: '' }, { url: '' }, { url: '' },
{ url: '' }, { url: '' }, { url: '' }, { url: '' }, { url: '' },
{ url: '' }, { url: '' }, { url: '' }, { url: '' }, { url: '' },
{ url: '' }, { url: '' }, { url: '' }, { url: '' }, { url: '' },
{ url: '' }, { url: '' }, { url: '' }, { url: '' }, { url: '' },
{ url: '' }, { url: '' }, { url: '' }, { url: '' }, { url: '' },
... 9901 more items
]
}
v1.7.0 is ok.
Should be fixed in v1.7.2, let me know if you see any issues with it.
It works. Thanks.