diff --git a/src/lib/exchange_api_batch_deposit.c b/src/lib/exchange_api_batch_deposit.c index ca5c3c618..4665908d2 100644 --- a/src/lib/exchange_api_batch_deposit.c +++ b/src/lib/exchange_api_batch_deposit.c @@ -269,6 +269,7 @@ handle_deposit_finished (void *cls, GNUNET_break_op (0); dr.hr.http_status = 0; dr.hr.ec = TALER_EC_GENERIC_REPLY_MALFORMED; + GNUNET_JSON_parse_free (spec); break; } dh->exchange_sigs = GNUNET_new_array (dh->num_cdds, @@ -281,6 +282,7 @@ handle_deposit_finished (void *cls, GNUNET_break_op (0); dr.hr.http_status = 0; dr.hr.ec = TALER_EC_EXCHANGE_DEPOSIT_INVALID_SIGNATURE_BY_EXCHANGE; + GNUNET_JSON_parse_free (spec); break; } json_array_foreach (sigs, idx, sig) @@ -330,12 +332,14 @@ handle_deposit_finished (void *cls, GNUNET_break_op (0); dr.hr.http_status = 0; dr.hr.ec = TALER_EC_EXCHANGE_DEPOSIT_INVALID_SIGNATURE_BY_EXCHANGE; + GNUNET_JSON_parse_free (spec); break; } } TEAH_get_auditors_for_dc (dh->exchange, &auditor_cb, dh); + GNUNET_JSON_parse_free (spec); } dr.details.success.exchange_sigs = dh->exchange_sigs; dr.details.success.exchange_pub = &dh->exchange_pub;