From 5ecb5467b6960ab41b8f8b45f9380fcba74c3ed8 Mon Sep 17 00:00:00 2001
From: "Dr. Stephen Henson" <steve@openssl.org>
Date: Thu, 8 Sep 2016 15:10:32 +0100
Subject: [PATCH] Fix memory leak on error.

Backport leak fix from master branch.

Thanks to Shi Lei for reporting this bug.

Reviewed-by: Rich Salz <rsalz@openssl.org>
---
 crypto/x509/x509spki.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/crypto/x509/x509spki.c b/crypto/x509/x509spki.c
index 2df84ead9e..5ae5d30a35 100644
--- a/crypto/x509/x509spki.c
+++ b/crypto/x509/x509spki.c
@@ -112,6 +112,8 @@ char *NETSCAPE_SPKI_b64_encode(NETSCAPE_SPKI *spki)
     der_spki = OPENSSL_malloc(der_len);
     b64_str = OPENSSL_malloc(der_len * 2);
     if (!der_spki || !b64_str) {
+        OPENSSL_free(der_spki);
+        OPENSSL_free(b64_str);
         X509err(X509_F_NETSCAPE_SPKI_B64_ENCODE, ERR_R_MALLOC_FAILURE);
         return NULL;
     }
-- 
2.40.0