Skip to content

Commit 2b7dcc8

Browse files
committed
fix: array size byte offset
1 parent f442db6 commit 2b7dcc8

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

src/codecs/array.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -108,10 +108,10 @@ class ArrayCodec {
108108
};
109109
}
110110
else {
111-
this.$$size = (value) => {
111+
this.$$size = (value, byteOffset) => {
112112
let size = 4;
113113
for (const element of value) {
114-
size += this.$$elementCodec.size(element, size);
114+
size += this.$$elementCodec.size(element, size + byteOffset);
115115
}
116116
return size;
117117
};
@@ -157,7 +157,7 @@ class ArrayCodec {
157157
};
158158
}
159159
else {
160-
this.$$size = (value) => {
160+
this.$$size = (value, byteOffset) => {
161161
let size = 0;
162162
// let the environment report
163163
if (!value[Symbol.iterator]) {
@@ -166,7 +166,7 @@ class ArrayCodec {
166166
let protocol = value[Symbol.iterator]();
167167
let result = protocol.next();
168168
for (let i = 0; i < length; ++i) {
169-
size += this.$$elementCodec.size(result.value);
169+
size += this.$$elementCodec.size(result.value, size + byteOffset);
170170
result = protocol.next();
171171
}
172172
return size;

0 commit comments

Comments
 (0)