Fix leak
[openssl.git] / crypto / asn1 / tasn_dec.c
index 0eefcfb6e0ec45c0e6e5607bf3fbdd9e39859b71..fe1bfd0a9045e9908bb7d5ab5010e53ccb4e2f94 100644 (file)
@@ -878,7 +878,10 @@ static int asn1_d2i_ex_primitive(ASN1_VALUE **pval,
                 * for UNIVERSAL class and ignore the tag.
                 */
                if (!asn1_collect(&buf, &p, plen, inf, -1, V_ASN1_UNIVERSAL))
+                       {
+                       free_cont = 1;
                        goto err;
+                       }
                len = buf.length;
                /* Append a final null to string */
                if (!BUF_MEM_grow_clean(&buf, len + 1))