summaryrefslogtreecommitdiff
path: root/Cryptlib/OpenSSL/crypto/asn1/x_pubkey.c
diff options
context:
space:
mode:
authorSteve Langasek <steve.langasek@canonical.com>2014-10-07 05:35:11 +0000
committerSteve Langasek <steve.langasek@canonical.com>2014-10-07 05:35:11 +0000
commit1e963007c0d9466726a8680e52a95955288d8927 (patch)
tree9345749af183fe511dfe6a24fb43b44a5feefcd9 /Cryptlib/OpenSSL/crypto/asn1/x_pubkey.c
parente34fca619d8a75f3b67d59d45cdd9db4da2342e6 (diff)
downloadefi-boot-shim-1e963007c0d9466726a8680e52a95955288d8927.tar.gz
efi-boot-shim-1e963007c0d9466726a8680e52a95955288d8927.zip
debian/patches/0001-Update-openssl-to-0.9.8za.patch: cherry-pick
openssl 0.9.8za in via upstream.
Diffstat (limited to 'Cryptlib/OpenSSL/crypto/asn1/x_pubkey.c')
-rwxr-xr-xCryptlib/OpenSSL/crypto/asn1/x_pubkey.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/Cryptlib/OpenSSL/crypto/asn1/x_pubkey.c b/Cryptlib/OpenSSL/crypto/asn1/x_pubkey.c
index 94d9f7eb..bc8a7bf3 100755
--- a/Cryptlib/OpenSSL/crypto/asn1/x_pubkey.c
+++ b/Cryptlib/OpenSSL/crypto/asn1/x_pubkey.c
@@ -371,12 +371,15 @@ EVP_PKEY *X509_PUBKEY_get(X509_PUBKEY *key)
CRYPTO_w_lock(CRYPTO_LOCK_EVP_PKEY);
if (key->pkey)
{
+ CRYPTO_w_unlock(CRYPTO_LOCK_EVP_PKEY);
EVP_PKEY_free(ret);
ret = key->pkey;
}
else
+ {
key->pkey = ret;
- CRYPTO_w_unlock(CRYPTO_LOCK_EVP_PKEY);
+ CRYPTO_w_unlock(CRYPTO_LOCK_EVP_PKEY);
+ }
CRYPTO_add(&ret->references, 1, CRYPTO_LOCK_EVP_PKEY);
return(ret);
err: