diff --git a/src/workers/gifparsing.worker.js b/src/workers/gifparsing.worker.js
index 643a95ab98e52c048ef551a6249e3ef937191389..1d1400cde35215bc65eba23863c8baa978bcb799 100644
--- a/src/workers/gifparsing.worker.js
+++ b/src/workers/gifparsing.worker.js
@@ -63,10 +63,12 @@ self.onmessage = e => {
     new Uint8Array(e.data),
     (delays, loopcnt, frames, disposals) => {
       self.postMessage([true, frames, delays, disposals]);
+      delete self.onmessage;
     },
     err => {
       console.error("Error in gif parsing worker", err);
       self.postMessage([false, err]);
+      delete self.onmessage;
     }
   );
 };
diff --git a/src/workers/sketchfab-zip.worker.js b/src/workers/sketchfab-zip.worker.js
index 2bfadd0e1949d751ab029701a41e09bd69853035..9108cbb5597669d99f6c62bcfed4798946458fa1 100644
--- a/src/workers/sketchfab-zip.worker.js
+++ b/src/workers/sketchfab-zip.worker.js
@@ -29,4 +29,5 @@ self.onmessage = async e => {
   } catch (e) {
     self.postMessage([false, e.message]);
   }
+  delete self.onmessage;
 };