diff --git a/packages/taler-wallet-core/src/operations/transactions.ts b/packages/taler-wallet-core/src/operations/transactions.ts index e3cfa0c25..ac502fc08 100644 --- a/packages/taler-wallet-core/src/operations/transactions.ts +++ b/packages/taler-wallet-core/src/operations/transactions.ts @@ -106,6 +106,7 @@ import { computeTipTransactionStatus, processTip } from "./tip.js"; import { abortWithdrawalTransaction, augmentPaytoUrisForWithdrawal, + cancelAbortingWithdrawalTransaction, computeWithdrawalTransactionStatus, processWithdrawalGroup, } from "./withdraw.js"; @@ -1415,6 +1416,9 @@ export async function cancelAbortingTransaction( case TransactionType.Deposit: await cancelAbortingDepositGroup(ws, tx.depositGroupId); return; + case TransactionType.Withdrawal: + await cancelAbortingWithdrawalTransaction(ws, tx.withdrawalGroupId); + return; default: logger.warn(`unable to suspend transaction of type '${tx.tag}'`); } diff --git a/packages/taler-wallet-core/src/operations/withdraw.ts b/packages/taler-wallet-core/src/operations/withdraw.ts index d59d9fea3..c0566bf4d 100644 --- a/packages/taler-wallet-core/src/operations/withdraw.ts +++ b/packages/taler-wallet-core/src/operations/withdraw.ts @@ -339,8 +339,6 @@ export async function abortWithdrawalTransaction( notifyTransition(ws, transactionId, transitionInfo); } -// Called "cancel" in the spec right now, -// from suspended-aborting. export async function cancelAbortingWithdrawalTransaction( ws: InternalWalletState, withdrawalGroupId: string, @@ -364,6 +362,7 @@ export async function cancelAbortingWithdrawalTransaction( } let newStatus: WithdrawalGroupStatus | undefined = undefined; switch (wg.status) { + case WithdrawalGroupStatus.SuspendedAbortingBank: case WithdrawalGroupStatus.AbortingBank: newStatus = WithdrawalGroupStatus.FailedAbortingBank; break;