aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/util/taler-helper-crypto-rsa.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/util/taler-helper-crypto-rsa.c b/src/util/taler-helper-crypto-rsa.c
index b8f959ee3..e72a7824b 100644
--- a/src/util/taler-helper-crypto-rsa.c
+++ b/src/util/taler-helper-crypto-rsa.c
@@ -78,9 +78,7 @@ struct DenominationKey
char *filename;
/**
- * The private key of the denomination. Will be NULL if the private
- * key is not available (this is the case after the key has expired
- * for signing coins, but is still valid for depositing coins).
+ * The private key of the denomination.
*/
struct TALER_DenominationPrivateKey denom_priv;
@@ -590,6 +588,14 @@ handle_done (void *cls)
&sr->header);
GNUNET_free (sr);
}
+ {
+ struct DenominationKey *dk = wi->dk;
+
+ dk->rc--;
+ if ( (0 == dk->rc) &&
+ (dk->purge) )
+ free_dk (dk);
+ }
GNUNET_free (wi);
GNUNET_assert (0 == pthread_mutex_lock (&done_lock));
}