diff options
Diffstat (limited to 'packages/taler-wallet-webextension/src/wxBackend.ts')
-rw-r--r-- | packages/taler-wallet-webextension/src/wxBackend.ts | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/packages/taler-wallet-webextension/src/wxBackend.ts b/packages/taler-wallet-webextension/src/wxBackend.ts index b0d690ef8..2ac8f6343 100644 --- a/packages/taler-wallet-webextension/src/wxBackend.ts +++ b/packages/taler-wallet-webextension/src/wxBackend.ts @@ -46,7 +46,6 @@ import { BrowserHttpLib } from "./browserHttpLib.js"; import { MessageFromBackend, platform } from "./platform/api.js"; import { SynchronousCryptoWorkerFactory } from "./serviceWorkerCryptoWorkerFactory.js"; import { ServiceWorkerHttpLib } from "./serviceWorkerHttpLib.js"; -import { ServiceWorkerTimerAPI } from "./serviceWorkerTimerAPI.js"; /** * Currently active wallet instance. Might be unloaded and @@ -196,7 +195,7 @@ async function reinitWallet(): Promise<void> { if (platform.useServiceWorkerAsBackgroundProcess()) { httpLib = new ServiceWorkerHttpLib(); cryptoWorker = new SynchronousCryptoWorkerFactory(); - timer = new ServiceWorkerTimerAPI(); + timer = new SetTimeoutTimerAPI(); } else { httpLib = new BrowserHttpLib(); cryptoWorker = new BrowserCryptoWorkerFactory(); @@ -216,9 +215,12 @@ async function reinitWallet(): Promise<void> { const message: MessageFromBackend = { type: x.type }; platform.sendMessageToAllChannels(message) }); - wallet.runTaskLoop().catch((e) => { - logger.error("error during wallet task loop", e); - }); + + platform.keepAlive(() => { + wallet.runTaskLoop().catch((e) => { + logger.error("error during wallet task loop", e); + }); + }) // Useful for debugging in the background page. if (typeof window !== "undefined") { (window as any).talerWallet = wallet; |