fix offscreen canvas sample
diff --git a/js/render/nodes/gltf2.js b/js/render/nodes/gltf2.js
index e8158f9..067b012 100644
--- a/js/render/nodes/gltf2.js
+++ b/js/render/nodes/gltf2.js
@@ -55,7 +55,9 @@
       this._resolver = null;
       this._rejecter = null;
     }).catch((err) => {
-      this._rejecter(err);
+      if (this._rejecter) {
+        this._rejecter(err);
+      }
       this._resolver = null;
       this._rejecter = null;
     });
diff --git a/js/util/inline-viewer-helper.js b/js/util/inline-viewer-helper.js
index 0bf0cbc..8f9b51e 100644
--- a/js/util/inline-viewer-helper.js
+++ b/js/util/inline-viewer-helper.js
@@ -40,7 +40,9 @@
 
     this.dirty = false;
 
-    canvas.style.cursor = 'grab';
+    if (canvas.style) {
+      canvas.style.cursor = 'grab';
+    }
 
     canvas.addEventListener('mousemove', (event) => {
       // Only rotate when the left button is pressed
diff --git a/tests/offscreen-canvas.html b/tests/offscreen-canvas.html
index b97fbed..94bbd8d 100644
--- a/tests/offscreen-canvas.html
+++ b/tests/offscreen-canvas.html
@@ -63,7 +63,7 @@
           // This sample will create an offscreen canvas for WebGL rather than
           // the usual canvas Dom element.
           let offscreenCanvas = new OffscreenCanvas(16, 16);
-          return offscreenCanvas.getContext('webgl', {
+          return offscreenCanvas.getContext('webgl2', {
             xrCompatible: true
           });
         }