fix: unsigned indexes
This commit is contained in:
parent
f7d74df32c
commit
3e73bc9950
|
@ -59,20 +59,20 @@ export class Packer {
|
|||
const view = new DataView(packedSteps);
|
||||
let caret = 0;
|
||||
// Number of steps.
|
||||
view.setInt32(caret, preparedSteps.length);
|
||||
view.setUint32(caret, preparedSteps.length);
|
||||
caret += 4;
|
||||
preparedSteps.forEach(({op, path, value}) => {
|
||||
// Op.
|
||||
view.setInt8(caret, op);
|
||||
view.setUint8(caret, op);
|
||||
caret += 1;
|
||||
// Path.
|
||||
view.setInt32(caret, path);
|
||||
view.setUint32(caret, path);
|
||||
caret += 4;
|
||||
if ('remove' === op) {
|
||||
return;
|
||||
}
|
||||
// Value.
|
||||
view.setInt8(caret, value.type);
|
||||
view.setUint8(caret, value.type);
|
||||
caret += 1;
|
||||
switch (value.type) {
|
||||
case PACKER_STEP_VALUE_BYTE:
|
||||
|
@ -229,13 +229,13 @@ export class Unpacker {
|
|||
}
|
||||
const view = new DataView(packedSteps);
|
||||
let caret = 0;
|
||||
const numberOfSteps = view.getInt32(caret);
|
||||
const numberOfSteps = view.getUint32(caret);
|
||||
caret += 4;
|
||||
const steps = new Array(numberOfSteps);
|
||||
for (let i = 0; i < numberOfSteps; ++i) {
|
||||
const packedOp = view.getInt8(caret);
|
||||
const packedOp = view.getUint8(caret);
|
||||
caret += 1;
|
||||
const packedPath = view.getInt32(caret);
|
||||
const packedPath = view.getUint32(caret);
|
||||
caret += 4;
|
||||
steps[i] = {
|
||||
op: this.constructor.unpackOp(packedOp),
|
||||
|
@ -244,7 +244,7 @@ export class Unpacker {
|
|||
if (PACKER_STEP_OP_REMOVE === packedOp) {
|
||||
continue;
|
||||
}
|
||||
const valueType = view.getInt8(caret);
|
||||
const valueType = view.getUint8(caret);
|
||||
caret += 1;
|
||||
let value;
|
||||
switch (valueType) {
|
||||
|
|
Loading…
Reference in New Issue
Block a user