diff options
Diffstat (limited to 'packages/taler-wallet-core/src/operations/refresh.ts')
-rw-r--r-- | packages/taler-wallet-core/src/operations/refresh.ts | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/packages/taler-wallet-core/src/operations/refresh.ts b/packages/taler-wallet-core/src/operations/refresh.ts index c2f0f0360..806e4a246 100644 --- a/packages/taler-wallet-core/src/operations/refresh.ts +++ b/packages/taler-wallet-core/src/operations/refresh.ts @@ -890,10 +890,6 @@ export async function createRefreshGroup( ); switch (coin.status) { case CoinStatus.Dormant: - coin.spendAllocation = { - amount: Amounts.stringify(ocp.amount), - id: `txn:refresh:${refreshGroupId}`, - }; break; case CoinStatus.Fresh: { coin.status = CoinStatus.Dormant; @@ -912,15 +908,17 @@ export async function createRefreshGroup( // For suspended coins, we don't have to adjust coin // availability, as they are not counted as available. coin.status = CoinStatus.Dormant; - coin.spendAllocation = { - amount: Amounts.stringify(ocp.amount), - id: `txn:refresh:${refreshGroupId}`, - }; break; } default: assertUnreachable(coin.status); } + if (!coin.spendAllocation) { + coin.spendAllocation = { + amount: Amounts.stringify(ocp.amount), + id: `txn:refresh:${refreshGroupId}`, + }; + } const refreshAmount = ocp.amount; inputPerCoin.push(Amounts.parseOrThrow(refreshAmount)); await tx.coins.put(coin); |