52 lines
1.5 KiB
Diff
52 lines
1.5 KiB
Diff
|
commit ed689613e93f3121048d6c922c90aafd6bf10880
|
||
|
Author: Peter Jones <pjones@redhat.com>
|
||
|
Date: Tue Nov 27 11:37:05 2012 -0500
|
||
|
|
||
|
Hopefully make teardown_digests() work better...
|
||
|
|
||
|
Freeing nss constructs continues to be weird.
|
||
|
|
||
|
Signed-off-by: Peter Jones <pjones@redhat.com>
|
||
|
|
||
|
---
|
||
|
src/cms_common.c | 7 ++-----
|
||
|
1 file changed, 2 insertions(+), 5 deletions(-)
|
||
|
|
||
|
--- a/src/cms_common.c
|
||
|
+++ b/src/cms_common.c
|
||
|
@@ -110,8 +110,6 @@ teardown_digests(cms_context *ctx)
|
||
|
PK11_DestroyContext(digests[i].pk11ctx, PR_TRUE);
|
||
|
}
|
||
|
if (digests[i].pe_digest) {
|
||
|
- free_poison(digests[i].pe_digest->data,
|
||
|
- digests[i].pe_digest->len);
|
||
|
/* XXX sure seems like we should be freeing it here,
|
||
|
* but that's segfaulting, and we know it'll get
|
||
|
* cleaned up with PORT_FreeArena a couple of lines
|
||
|
@@ -120,7 +118,7 @@ teardown_digests(cms_context *ctx)
|
||
|
digests[i].pe_digest = NULL;
|
||
|
}
|
||
|
}
|
||
|
- free(digests);
|
||
|
+ PORT_Free(digests);
|
||
|
ctx->digests = NULL;
|
||
|
}
|
||
|
|
||
|
@@ -184,7 +182,6 @@ cms_context_fini(cms_context *cms)
|
||
|
memset(&cms->newsig, '\0', sizeof (cms->newsig));
|
||
|
}
|
||
|
|
||
|
- teardown_digests(cms);
|
||
|
cms->selected_digest = -1;
|
||
|
|
||
|
if (cms->ci_digest) {
|
||
|
@@ -708,7 +705,7 @@ generate_digest_begin(cms_context *cms)
|
||
|
if (cms->digests) {
|
||
|
digests = cms->digests;
|
||
|
} else {
|
||
|
- digests = calloc(n_digest_params, sizeof (*digests));
|
||
|
+ digests = PORT_ZAlloc(n_digest_params * sizeof (*digests));
|
||
|
if (!digests) {
|
||
|
cms->log(cms, LOG_ERR, "cannot allocate memory: %m");
|
||
|
return -1;
|