diff options
author | Christian Grothoff <christian@grothoff.org> | 2017-06-04 12:24:51 +0200 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2017-06-04 12:24:51 +0200 |
commit | 2f74a5b00eeb0fca35e51abf35bd7e82b43a90ef (patch) | |
tree | 8790f80a50b382714a7b81e26b9dcb4ff34362ff /src/exchange-lib | |
parent | 4694810d9d6dc1f8ef3168c1bd7ce0cbea642a1c (diff) |
fix remaining leak from #5050
Diffstat (limited to 'src/exchange-lib')
-rw-r--r-- | src/exchange-lib/exchange_api_handle.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/exchange-lib/exchange_api_handle.c b/src/exchange-lib/exchange_api_handle.c index 40e51073e..590d4de99 100644 --- a/src/exchange-lib/exchange_api_handle.c +++ b/src/exchange-lib/exchange_api_handle.c @@ -413,8 +413,7 @@ parse_json_auditor (struct TALER_EXCHANGE_AuditorInformation *auditor, struct TALER_AuditorSignatureP auditor_sig; struct GNUNET_HashCode denom_h; const struct TALER_EXCHANGE_DenomPublicKey *dk; - unsigned int j; - struct GNUNET_JSON_Specification spec[] = { + struct GNUNET_JSON_Specification kspec[] = { GNUNET_JSON_spec_fixed_auto ("denom_pub_h", &denom_h), GNUNET_JSON_spec_fixed_auto ("auditor_sig", @@ -424,14 +423,14 @@ parse_json_auditor (struct TALER_EXCHANGE_AuditorInformation *auditor, if (GNUNET_OK != GNUNET_JSON_parse (key, - spec, + kspec, NULL, NULL)) { GNUNET_break_op (0); continue; } dk = NULL; - for (j=0;j<key_data->num_denom_keys;j++) + for (unsigned int j=0;j<key_data->num_denom_keys;j++) { if (0 == memcmp (&denom_h, &key_data->denom_keys[j].h_key, @@ -468,12 +467,14 @@ parse_json_auditor (struct TALER_EXCHANGE_AuditorInformation *auditor, &auditor->auditor_pub.eddsa_pub)) { GNUNET_break_op (0); + GNUNET_JSON_parse_free (spec); return GNUNET_SYSERR; } auditor->denom_keys[off] = dk; off++; } auditor->num_denom_keys = off; + GNUNET_JSON_parse_free (spec); return GNUNET_OK; } |