diff --git a/src/PaymentServer/Persistence.hs b/src/PaymentServer/Persistence.hs index 4363000a2de372c6090a0d94aef215442662dcc2..57ec04dec63f24aa877ac25ea95e196dfd0dd4f7 100644 --- a/src/PaymentServer/Persistence.hs +++ b/src/PaymentServer/Persistence.hs @@ -98,7 +98,7 @@ instance VoucherDatabase VoucherDatabaseState where redeemVoucher MemoryDB{ paid = paid, redeemed = redeemed } voucher fingerprint = do unpaid <- Set.notMember voucher <$> readIORef paid existingFingerprint <- Map.lookup voucher <$> readIORef redeemed - let insertFn voucher fingerprint = modifyIORef redeemed (Map.insert voucher fingerprint) + let insertFn = (modifyIORef redeemed .) . Map.insert redeemVoucherHelper (unpaid, existingFingerprint) voucher fingerprint insertFn redeemVoucher SQLiteDB { conn = conn } voucher fingerprint = do