summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Dold <florian.dold@gmail.com>2019-08-26 01:30:28 +0200
committerFlorian Dold <florian.dold@gmail.com>2019-08-26 01:30:28 +0200
commit15518f077f9955d04de58c8041370372a7d0475b (patch)
tree66d3f2a502e10f70b31a37cac4ddd670af48351d
parent7eba0bcd293d10e49c0e6cb4011b0eda2e65f756 (diff)
downloadmerchant-15518f077f9955d04de58c8041370372a7d0475b.tar.gz
merchant-15518f077f9955d04de58c8041370372a7d0475b.tar.bz2
merchant-15518f077f9955d04de58c8041370372a7d0475b.zip
oops, fix use before initialization
-rw-r--r--src/backend/taler-merchant-httpd_check-payment.c31
1 files changed, 16 insertions, 15 deletions
diff --git a/src/backend/taler-merchant-httpd_check-payment.c b/src/backend/taler-merchant-httpd_check-payment.c
index b0d380f9..b4526b14 100644
--- a/src/backend/taler-merchant-httpd_check-payment.c
+++ b/src/backend/taler-merchant-httpd_check-payment.c
@@ -363,6 +363,22 @@ MH_handler_check_payment (struct TMH_RequestHandler *rh,
GNUNET_assert (NULL != contract_terms);
GNUNET_assert (NULL != last_session_id);
+ if (GNUNET_OK !=
+ TALER_JSON_hash (contract_terms,
+ &h_contract_terms))
+ {
+ GNUNET_break (0);
+ json_decref (contract_terms);
+ GNUNET_free (last_session_id);
+ GNUNET_free (final_contract_url);
+ return TMH_RESPONSE_reply_internal_error (connection,
+ TALER_EC_CHECK_PAYMENT_FAILED_COMPUTE_PROPOSAL_HASH,
+ "Failed to hash proposal");
+ }
+
+ h_contract_terms_str = GNUNET_STRINGS_data_to_string_alloc (&h_contract_terms,
+ sizeof (struct GNUNET_HashCode));
+
if ( (NULL != session_id) && (0 != strcmp (session_id, last_session_id)) )
{
@@ -379,21 +395,6 @@ MH_handler_check_payment (struct TMH_RequestHandler *rh,
return ret;
}
- if (GNUNET_OK !=
- TALER_JSON_hash (contract_terms,
- &h_contract_terms))
- {
- GNUNET_break (0);
- json_decref (contract_terms);
- GNUNET_free (last_session_id);
- GNUNET_free (final_contract_url);
- return TMH_RESPONSE_reply_internal_error (connection,
- TALER_EC_CHECK_PAYMENT_FAILED_COMPUTE_PROPOSAL_HASH,
- "Failed to hash proposal");
- }
-
- h_contract_terms_str = GNUNET_STRINGS_data_to_string_alloc (&h_contract_terms,
- sizeof (struct GNUNET_HashCode));
/* Check if paid */
{