From 081b98cc4b0775a33c76cfeada1706087e2ccd0e Mon Sep 17 00:00:00 2001 From: Jed Fox <git@jedfox.com> Date: Fri, 24 Feb 2023 15:43:19 -0500 Subject: [PATCH] =?UTF-8?q?Don=E2=80=99t=20post=20messages=20to=20the=20wo?= =?UTF-8?q?rker=20until=20it=20is=20ready=20(#681)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../platform/client/fetch/index.browser.js | 27 ++++++++----------- 1 file changed, 11 insertions(+), 16 deletions(-) diff --git a/packages/loot-core/src/platform/client/fetch/index.browser.js b/packages/loot-core/src/platform/client/fetch/index.browser.js index 6b39f14a8..2cb04ba84 100644 --- a/packages/loot-core/src/platform/client/fetch/index.browser.js +++ b/packages/loot-core/src/platform/client/fetch/index.browser.js @@ -88,7 +88,7 @@ function connectWorker(worker, onOpen, onError) { // Send any messages that were queued while closed if (messageQueue.length > 0) { messageQueue.forEach(msg => worker.postMessage(msg)); - messageQueue = []; + messageQueue = null; } onOpen(); @@ -138,22 +138,17 @@ module.exports.send = function send(name, args, { catchErrors = false } = {}) { return new Promise((resolve, reject) => { uuid.v4().then(id => { replyHandlers.set(id, { resolve, reject }); - if (globalWorker) { - globalWorker.postMessage({ - id, - name, - args, - undoTag: undo.snapshot(), - catchErrors, - }); + let message = { + id, + name, + args, + undoTag: undo.snapshot(), + catchErrors, + }; + if (messageQueue) { + messageQueue.push(message); } else { - messageQueue.push({ - id, - name, - args, - undoTag: undo.snapshot(), - catchErrors, - }); + globalWorker.postMessage(message); } }); }); -- GitLab