exchange

Base system with REST service to issue digital coins, run by the payment service provider
Log | Files | Refs | Submodules | README | LICENSE

commit e8ea6bf1e7d9f22a964a9e7e13bc68debb0a7954
parent 18605e6c9856b234afd5fcad1eab7b7692f786e7
Author: Christian Grothoff <christian@grothoff.org>
Date:   Fri, 14 Aug 2020 13:07:53 +0200

fix bug: case where this is the first refund

Diffstat:
Msrc/lib/exchange_api_refund.c | 19+++++++++++++------
1 file changed, 13 insertions(+), 6 deletions(-)

diff --git a/src/lib/exchange_api_refund.c b/src/lib/exchange_api_refund.c @@ -377,13 +377,20 @@ verify_conflict_history_ok (struct TALER_EXCHANGE_RefundHandle *rh, TALER_amount_ntoh (&amount, &rh->depconf.refund_amount); - if (0 > - TALER_amount_add (&rtotal, - &rtotal, - &amount)) + if (have_refund) { - GNUNET_break (0); - return GNUNET_SYSERR; + if (0 > + TALER_amount_add (&rtotal, + &rtotal, + &amount)) + { + GNUNET_break (0); + return GNUNET_SYSERR; + } + } + else + { + rtotal = amount; } } if (-1 == TALER_amount_cmp (&dtotal,