commit 9cb267ecea87eddd7c420cd5115e74e45bfdf056
parent 6f10566329cea8373ad33a2875ffae264b8c41ba
Author: Florian Dold <dold@taler.net>
Date: Wed, 22 Jul 2026 10:44:46 +0200
wallet: leave an expired pull debit untouched on resume
Resuming an expired transaction fell through to the record update and emitted
a transition from Expired to Expired. The other peer transactions list the
state explicitly and assert that the switch is exhaustive.
Diffstat:
1 file changed, 4 insertions(+), 0 deletions(-)
diff --git a/packages/taler-wallet-core/src/pay-peer-pull-debit.ts b/packages/taler-wallet-core/src/pay-peer-pull-debit.ts
@@ -289,8 +289,12 @@ export class PeerPullDebitTransactionContext implements TransactionContext {
case PeerPullDebitRecordStatus.Failed:
case PeerPullDebitRecordStatus.DialogProposed:
case PeerPullDebitRecordStatus.Done:
+ case PeerPullDebitRecordStatus.Expired:
case PeerPullDebitRecordStatus.PendingDeposit:
+ // Do nothing
return;
+ default:
+ assertUnreachable(rec.status);
}
await h.update(rec);
});