diff options
author | Christian Grothoff <christian@grothoff.org> | 2022-06-07 15:02:08 +0200 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2022-06-07 15:02:16 +0200 |
commit | b9a30d29cb91ec66c3bb8d956640d20e641b6a4d (patch) | |
tree | 4ad72e722981bb1ef68a643a7f9cff6f1323497b /src/exchange/taler-exchange-httpd_purses_create.c | |
parent | 013942ba917958d31a9923f612f4c0f388f7b178 (diff) |
-fix minor bugs
Diffstat (limited to 'src/exchange/taler-exchange-httpd_purses_create.c')
-rw-r--r-- | src/exchange/taler-exchange-httpd_purses_create.c | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/src/exchange/taler-exchange-httpd_purses_create.c b/src/exchange/taler-exchange-httpd_purses_create.c index d6c942c6..cc5478d1 100644 --- a/src/exchange/taler-exchange-httpd_purses_create.c +++ b/src/exchange/taler-exchange-httpd_purses_create.c @@ -207,8 +207,9 @@ create_transaction (void *cls, struct TALER_Amount purse_fee; bool in_conflict = true; - TALER_amount_set_zero (pcc->amount.currency, - &purse_fee); + GNUNET_assert (GNUNET_OK == + TALER_amount_set_zero (pcc->amount.currency, + &purse_fee)); /* 1) create purse */ qs = TEH_plugin->insert_purse_request ( TEH_plugin->cls, @@ -739,8 +740,22 @@ TEH_handler_purses_create ( TALER_EC_GENERIC_PARAMETER_MALFORMED, "deposits"); } - gf = TEH_keys_global_fee_by_time (TEH_keys_get_state (), - pcc.exchange_timestamp); + { + struct TEH_KeyStateHandle *keys; + + keys = TEH_keys_get_state (); + if (NULL == keys) + { + GNUNET_break (0); + GNUNET_JSON_parse_free (spec); + return TALER_MHD_reply_with_error (connection, + MHD_HTTP_INTERNAL_SERVER_ERROR, + TALER_EC_EXCHANGE_GENERIC_KEYS_MISSING, + NULL); + } + gf = TEH_keys_global_fee_by_time (keys, + pcc.exchange_timestamp); + } if (NULL == gf) { GNUNET_log (GNUNET_ERROR_TYPE_WARNING, |