Submitted by: Peter Gutmann <pgut001@cs.auckland.ac.nz>
[openssl.git] / crypto / bn / bn_exp.c
index 70a33f0d936c81fab3f6a77e411f7e354c652edc..d9b6c737fc82f5f5f8c4bc9a5d7ba23ee8627c73 100644 (file)
@@ -134,7 +134,8 @@ int BN_exp(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, BN_CTX *ctx)
                rr = BN_CTX_get(ctx);
        else
                rr = r;
                rr = BN_CTX_get(ctx);
        else
                rr = r;
-       if ((v = BN_CTX_get(ctx)) == NULL) goto err;
+       v = BN_CTX_get(ctx);
+       if (rr == NULL || v == NULL) goto err;
 
        if (BN_copy(v,a) == NULL) goto err;
        bits=BN_num_bits(p);
 
        if (BN_copy(v,a) == NULL) goto err;
        bits=BN_num_bits(p);