Fix a compatibility issue: getBigUint64.
The method getBigUint64 is not supported by safari until version 15: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DataView/getBigUint64 This CL mannual reload this method. Test: Mannual tested. Change-Id: I1d967eda93f9f628fb7f0f5d9f90efb92429ed5e
This commit is contained in:
@@ -78,6 +78,15 @@ export class Payload {
|
|||||||
readInt(size) {
|
readInt(size) {
|
||||||
let /** DataView */ view = new DataView(
|
let /** DataView */ view = new DataView(
|
||||||
this.buffer.slice(this.cursor, this.cursor + size))
|
this.buffer.slice(this.cursor, this.cursor + size))
|
||||||
|
if (typeof view.getBigUint64 !== "function") {
|
||||||
|
view.getBigUint64 =
|
||||||
|
function(offset) {
|
||||||
|
const a = BigInt(view.getUint32(offset))
|
||||||
|
const b = BigInt(view.getUint32(offset + 4))
|
||||||
|
const bigNumber = a * 4294967296n + b
|
||||||
|
return bigNumber
|
||||||
|
}
|
||||||
|
}
|
||||||
this.cursor += size
|
this.cursor += size
|
||||||
switch (size) {
|
switch (size) {
|
||||||
case 2:
|
case 2:
|
||||||
|
|||||||
Reference in New Issue
Block a user