From: Dr. Stephen Henson Date: Tue, 26 Jul 2005 12:25:06 +0000 (+0000) Subject: Handle case where it==NULL X-Git-Tag: OpenSSL_0_9_8k^2~1886 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=5c8e9139d18ca20fd4a6f194697d2e2634009cca;p=oweals%2Fopenssl.git Handle case where it==NULL --- diff --git a/crypto/asn1/tasn_new.c b/crypto/asn1/tasn_new.c index 9216342fec..531dad365c 100644 --- a/crypto/asn1/tasn_new.c +++ b/crypto/asn1/tasn_new.c @@ -326,11 +326,13 @@ int ASN1_primitive_new(ASN1_VALUE **pval, const ASN1_ITEM *it) { ASN1_TYPE *typ; int utype; - const ASN1_PRIMITIVE_FUNCS *pf; - pf = it->funcs; - if (pf && pf->prim_new) - return pf->prim_new(pval, it); + if (it && it->funcs) + { + const ASN1_PRIMITIVE_FUNCS *pf = it->funcs; + if (pf->prim_new) + return pf->prim_new(pval, it); + } if (!it || (it->itype == ASN1_ITYPE_MSTRING)) utype = -1; @@ -374,10 +376,9 @@ int ASN1_primitive_new(ASN1_VALUE **pval, const ASN1_ITEM *it) void asn1_primitive_clear(ASN1_VALUE **pval, const ASN1_ITEM *it) { int utype; - const ASN1_PRIMITIVE_FUNCS *pf; - pf = it->funcs; - if (pf) + if (it && it->funcs) { + const ASN1_PRIMITIVE_FUNCS *pf = it->funcs; if (pf->prim_clear) pf->prim_clear(pval, it); else