diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/backend/taler-merchant-httpd_exchanges.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/backend/taler-merchant-httpd_exchanges.c b/src/backend/taler-merchant-httpd_exchanges.c index aca91603..4403ec1e 100644 --- a/src/backend/taler-merchant-httpd_exchanges.c +++ b/src/backend/taler-merchant-httpd_exchanges.c @@ -558,6 +558,7 @@ handle_wire_data (void *cls, const json_t *obj) { struct Exchange *exchange = cls; + const struct TALER_EXCHANGE_Keys *keys; exchange->wire_request = NULL; if (MHD_HTTP_OK != http_status) @@ -568,11 +569,13 @@ handle_wire_data (void *cls, ec); return; } - if (GNUNET_OK != - TALER_EXCHANGE_wire_get_fees (&TALER_EXCHANGE_get_keys (exchange->conn)->master_pub, - obj, - &process_wire_fees, - exchange)) + keys = TALER_EXCHANGE_get_keys (exchange->conn); + if ( (NULL == keys) || + (GNUNET_OK != + TALER_EXCHANGE_wire_get_fees (&keys->master_pub, + obj, + &process_wire_fees, + exchange)) ) { /* Report hard failure to all callbacks! */ struct TMH_EXCHANGES_FindOperation *fo; |