taler-typescript-core

Wallet core logic and WebUIs for various components
Log | Files | Refs | Submodules | README | LICENSE

commit 35164f0638ea365ce1ec7f8b9ab8ad21da6f73e6
parent d0bedb83a42cfe2bc000cd810187454d108ee42b
Author: Florian Dold <florian@dold.me>
Date:   Sat, 18 Jul 2026 16:48:00 +0200

fix concurrency issue on opening DB

Diffstat:
Mpackages/taler-wallet-core/src/wallet.ts | 5+++++
1 file changed, 5 insertions(+), 0 deletions(-)

diff --git a/packages/taler-wallet-core/src/wallet.ts b/packages/taler-wallet-core/src/wallet.ts @@ -3528,6 +3528,11 @@ export class InternalWalletState { while (this.loadingDb) { await this.loadingDbCond.wait(); } + // Another concurrent caller may have finished opening the DB while we + // were waiting; in that case don't re-open it. + if (this._indexedDbHandle) { + return; + } } this.loadingDb = true; const myVersionChange = async (): Promise<void> => {