diff --git a/src/util/binary.ts b/src/util/binary.ts index b32a6fbe71..ea31c07f2e 100644 --- a/src/util/binary.ts +++ b/src/util/binary.ts @@ -15,8 +15,8 @@ export function writeI8(value: i32, buffer: Uint8Array, offset: i32): void { /** Reads a 16-bit integer from the specified buffer. */ export function readI16(buffer: Uint8Array, offset: i32): i32 { - return buffer[offset ] - | buffer[offset + 1] << 8; + return i32(buffer[offset ]) + | i32(buffer[offset + 1]) << 8; } /** Writes a 16-bit integer to the specified buffer. */ @@ -27,10 +27,10 @@ export function writeI16(value: i32, buffer: Uint8Array, offset: i32): void { /** Reads a 32-bit integer from the specified buffer. */ export function readI32(buffer: Uint8Array, offset: i32): i32 { - return buffer[offset ] - | buffer[offset + 1] << 8 - | buffer[offset + 2] << 16 - | buffer[offset + 3] << 24; + return i32(buffer[offset ]) + | i32(buffer[offset + 1]) << 8 + | i32(buffer[offset + 2]) << 16 + | i32(buffer[offset + 3]) << 24; } /** Writes a 32-bit integer to the specified buffer. */