From 8860f3a82acb0fad6cdeafb5eca9ca22b5b232e0 Mon Sep 17 00:00:00 2001 From: "Dr. Stephen Henson" Date: Fri, 11 Nov 2005 12:59:39 +0000 Subject: [PATCH] Fix possible race condition. --- crypto/bn/bn_mont.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/crypto/bn/bn_mont.c b/crypto/bn/bn_mont.c index 82af91f90d..42376dae6b 100644 --- a/crypto/bn/bn_mont.c +++ b/crypto/bn/bn_mont.c @@ -358,12 +358,12 @@ BN_MONT_CTX *BN_MONT_CTX_set_locked(BN_MONT_CTX **pmont, int lock, CRYPTO_w_lock(lock); if (!*pmont) { - *pmont = BN_MONT_CTX_new(); - if (*pmont && !BN_MONT_CTX_set(*pmont, mod, ctx)) - { - BN_MONT_CTX_free(*pmont); - *pmont = NULL; - } + BN_MONT_CTX *mtmp; + mtmp = BN_MONT_CTX_new(); + if (mtmp && !BN_MONT_CTX_set(mtmp, mod, ctx)) + BN_MONT_CTX_free(mtmp); + else + *pmont = mtmp; } CRYPTO_w_unlock(lock); return *pmont; -- 2.25.1