Jake Vanderwerf
2026-06-29 4089ba01e0881c89a72332e13bc3a80b6bddec2a
assets/js/concise/UploadManager.js
@@ -1078,7 +1078,21 @@
   *********************************************************************/
   getWorker() {
      if (!this.workerState.worker && typeof OffscreenCanvas !== 'undefined') {
         this.workerState.worker = new Worker('worker.js');
         const workerCode = `
            self.onmessage = function(e) {
                const { id, imageBitmap, width, height, type, quality } = e.data;
                const canvas = new OffscreenCanvas(width, height);
                const ctx = canvas.getContext('2d');
                ctx.drawImage(imageBitmap, 0, 0, width, height);
                canvas.convertToBlob({ type, quality }).then(blob => {
                    self.postMessage({ id, blob });
                });
            };
        `;
         const blob = new Blob([workerCode], { type: 'application/javascript' });
         const url = URL.createObjectURL(blob);
         this.workerState.worker = new Worker(url);
         URL.revokeObjectURL(url); // Safe to revoke immediately after Worker is created
         this.workerState.worker.onmessage = (e) => this.handleWorkerMessage(e);
         this.workerState.worker.onerror = (e) => this.handleWorkerError(e);
      }