diff options
Diffstat (limited to 'src/crypto/synchronousWorker.ts')
-rw-r--r-- | src/crypto/synchronousWorker.ts | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/crypto/synchronousWorker.ts b/src/crypto/synchronousWorker.ts index b697c8e16..41ebee4f3 100644 --- a/src/crypto/synchronousWorker.ts +++ b/src/crypto/synchronousWorker.ts @@ -93,13 +93,19 @@ export class SynchronousCryptoWorker { return; } + let result: any; try { - const result = (impl as any)[operation](...args); - this.dispatchMessage({ result, id }); + result = (impl as any)[operation](...args); } catch (e) { console.log("error during operation", e); return; } + + try { + setImmediate(() => this.dispatchMessage({ result, id })); + } catch (e) { + console.log("got error during dispatch", e); + } } /** |