summaryrefslogtreecommitdiff
path: root/packages/taler-wallet-webextension/src/wxBackend.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/taler-wallet-webextension/src/wxBackend.ts')
-rw-r--r--packages/taler-wallet-webextension/src/wxBackend.ts12
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;