taler-typescript-core

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

commit 0b6b757f659cc1a1c770d994c05c361033b56c06
parent 2c57d4212838b70106f302ecc362a07e870e4068
Author: Sebastian <sebasjm@gmail.com>
Date:   Mon, 20 Feb 2023 12:36:48 -0300

don't use outdated purchase info

Diffstat:
Mpackages/taler-wallet-core/src/operations/pay-merchant.ts | 9+++++++--
1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/packages/taler-wallet-core/src/operations/pay-merchant.ts b/packages/taler-wallet-core/src/operations/pay-merchant.ts @@ -2697,8 +2697,13 @@ export async function processPurchaseQueryRefund( await ws.db .mktx((x) => [x.purchases]) .runReadWrite(async (tx) => { - purchase.purchaseStatus = PurchaseStatus.Paid; - await tx.purchases.put(purchase); + const p = await tx.purchases.get(proposalId); + if (!p) { + logger.warn("purchase does not exist anymore"); + return; + } + p.purchaseStatus = PurchaseStatus.Paid; + await tx.purchases.put(p); }); // No new refunds, but we still need to notify