Jelajahi Sumber

Fix issues with ArrayBuffer when running inside VM

Marcel Mraz 11 bulan lalu
induk
melakukan
8a6e644fc0
1 mengubah file dengan 2 tambahan dan 1 penghapusan
  1. 2 1
      packages/excalidraw/fonts/wasm/woff2.bindings.ts

+ 2 - 1
packages/excalidraw/fonts/wasm/woff2.bindings.ts

@@ -6,6 +6,7 @@
  * 
  * CHANGELOG:
  * - replaced existing exports with default esm export (`export default Module;`)
+ * - replaced "instanceof ArrayBuffer" with "Object.prototype.toString.call(d) === "[object ArrayBuffer]", due to unreliability of different ArrayBuffer instances depending on the context (i.e. inside VM)
 
 The MIT License (MIT)
 
@@ -2780,7 +2781,7 @@ const Module = (function () {
           return str;
         },
         toWireType(destructors, value) {
-          if (value instanceof ArrayBuffer) {
+          if (Object.prototype.toString.call(d) === "[object ArrayBuffer]") {
             value = new Uint8Array(value);
           }
           let getLength;