From 8aebcf283a4aecb1d058db8b4f021439e45d3685 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Tue, 22 Sep 2015 10:16:01 +0200 Subject: more leaks --- src/mintdb/plugin_mintdb_common.c | 33 ++++++++++++++++++++++++--------- 1 file changed, 24 insertions(+), 9 deletions(-) (limited to 'src/mintdb/plugin_mintdb_common.c') diff --git a/src/mintdb/plugin_mintdb_common.c b/src/mintdb/plugin_mintdb_common.c index 99ff92ae..bbe104f6 100644 --- a/src/mintdb/plugin_mintdb_common.c +++ b/src/mintdb/plugin_mintdb_common.c @@ -127,19 +127,34 @@ common_free_melt_commitment (void *cls, unsigned int i; unsigned int k; - GNUNET_free (mc->melts); - for (i=0;inum_newcoins;i++) - GNUNET_CRYPTO_rsa_public_key_free (mc->denom_pubs[i].rsa_public_key); - GNUNET_free (mc->denom_pubs); - for (k=0;kmelts) + { + for (i=0;inum_oldcoins;i++) + { + GNUNET_CRYPTO_rsa_signature_free (mc->melts[i].coin.denom_sig.rsa_signature); + GNUNET_CRYPTO_rsa_public_key_free (mc->melts[i].coin.denom_pub.rsa_public_key); + } + GNUNET_free (mc->melts); + } + if (NULL != mc->denom_pubs) { for (i=0;inum_newcoins;i++) + if (NULL != mc->denom_pubs[i].rsa_public_key) + GNUNET_CRYPTO_rsa_public_key_free (mc->denom_pubs[i].rsa_public_key); + GNUNET_free (mc->denom_pubs); + } + for (k=0;kcommit_coins[k]) { - GNUNET_free (mc->commit_coins[k][i].refresh_link); - GNUNET_free (mc->commit_coins[k][i].coin_ev); + for (i=0;inum_newcoins;i++) + { + GNUNET_free (mc->commit_coins[k][i].refresh_link); + GNUNET_free (mc->commit_coins[k][i].coin_ev); + } + GNUNET_free (mc->commit_coins[k]); } - GNUNET_free (mc->commit_coins[k]); - GNUNET_free (mc->commit_links[k]); + GNUNET_free_non_null (mc->commit_links[k]); } GNUNET_free (mc); } -- cgit v1.2.3