From 84f797b2c58e43d8c88e553d2c871d1df447cc11 Mon Sep 17 00:00:00 2001 From: Jack Grigg Date: Fri, 30 Sep 2016 18:54:16 +1300 Subject: [PATCH] Ensure correctness if asserts are compiled out --- src/ecwrapper.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/ecwrapper.cpp b/src/ecwrapper.cpp index 0c260bd8c..ae2748806 100644 --- a/src/ecwrapper.cpp +++ b/src/ecwrapper.cpp @@ -182,8 +182,9 @@ bool CECKey::Recover(const uint256 &hash, const unsigned char *p64, int rec) BIGNUM *sig_r = BN_bin2bn(&p64[0], 32, nullptr); BIGNUM *sig_s = BN_bin2bn(&p64[32], 32, nullptr); assert(sig && sig_r && sig_s); - assert(ECDSA_SIG_set0(sig, sig_r, sig_s)); - bool ret = ECDSA_SIG_recover_key_GFp(pkey, sig, (unsigned char*)&hash, sizeof(hash), rec, 0) == 1; + bool ret = ECDSA_SIG_set0(sig, sig_r, sig_s); + assert(ret); + ret = ECDSA_SIG_recover_key_GFp(pkey, sig, (unsigned char*)&hash, sizeof(hash), rec, 0) == 1; ECDSA_SIG_free(sig); return ret; }