From e8ea6bf1e7d9f22a964a9e7e13bc68debb0a7954 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Fri, 14 Aug 2020 13:07:53 +0200 Subject: fix bug: case where this is the first refund --- src/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 index ee634e7f6..55f71757c 100644 --- 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, -- cgit v1.2.3