crypto/asn1/x_name.c:221: error: MEMORY_LEAK
  memory dynamically allocated to `c.line` by call to `malloc()` at line 219, column 2 is not reachable after line 221, column 5.
Showing all 13 steps of the trace


crypto/asn1/x_name.c:214:1: start of procedure X509_NAME_new()
212.   	}
213.   
214. > X509_NAME *X509_NAME_new(void)
215.   	{
216.   	X509_NAME *ret=NULL;

crypto/asn1/x_name.c:216:2: 
214.   X509_NAME *X509_NAME_new(void)
215.   	{
216. > 	X509_NAME *ret=NULL;
217.   	ASN1_CTX c;
218.   

crypto/asn1/x_name.c:219:2: Taking false branch
217.   	ASN1_CTX c;
218.   
219.   	M_ASN1_New_Malloc(ret,X509_NAME);
        ^
220.   	if ((ret->entries=sk_X509_NAME_ENTRY_new(NULL)) == NULL)
221.   		{ c.line=__LINE__; goto err2; }

crypto/asn1/x_name.c:220:6: 
218.   
219.   	M_ASN1_New_Malloc(ret,X509_NAME);
220. > 	if ((ret->entries=sk_X509_NAME_ENTRY_new(NULL)) == NULL)
221.   		{ c.line=__LINE__; goto err2; }
222.   	M_ASN1_New(ret->bytes,BUF_MEM_new);

crypto/asn1/x_name.c:278:1: start of procedure sk_X509_NAME_ENTRY_new()
  276.   	}
  277.   	
  278. > IMPLEMENT_STACK_OF(X509_NAME_ENTRY)
  279.   IMPLEMENT_ASN1_SET_OF(X509_NAME_ENTRY)

crypto/stack/stack.c:112:1: start of procedure sk_new()
    110.   	}
    111.   
    112. > STACK *sk_new(int (*c)())
    113.   	{
    114.   	STACK *ret;

crypto/stack/stack.c:117:6: Taking true branch
    115.   	int i;
    116.   
    117.   	if ((ret=(STACK *)Malloc(sizeof(STACK))) == NULL)
                ^
    118.   		goto err0;
    119.   	if ((ret->data=(char **)Malloc(sizeof(char *)*MIN_NODES)) == NULL)

crypto/stack/stack.c:130:1: 
    128.   err1:
    129.   	Free((char *)ret);
    130. > err0:
    131.   	return(NULL);
    132.   	}

crypto/stack/stack.c:131:2: 
    129.   	Free((char *)ret);
    130.   err0:
    131. > 	return(NULL);
    132.   	}
    133.   

crypto/stack/stack.c:132:2: return from a call to sk_new
    130.   err0:
    131.   	return(NULL);
    132.   	}
            ^
    133.   
    134.   int sk_insert(STACK *st, char *data, int loc)

crypto/asn1/x_name.c:278:1: return from a call to sk_X509_NAME_ENTRY_new
  276.   	}
  277.   	
  278. > IMPLEMENT_STACK_OF(X509_NAME_ENTRY)
  279.   IMPLEMENT_ASN1_SET_OF(X509_NAME_ENTRY)

crypto/asn1/x_name.c:220:6: Taking true branch
218.   
219.   	M_ASN1_New_Malloc(ret,X509_NAME);
220.   	if ((ret->entries=sk_X509_NAME_ENTRY_new(NULL)) == NULL)
            ^
221.   		{ c.line=__LINE__; goto err2; }
222.   	M_ASN1_New(ret->bytes,BUF_MEM_new);

crypto/asn1/x_name.c:221:5: 
219.   	M_ASN1_New_Malloc(ret,X509_NAME);
220.   	if ((ret->entries=sk_X509_NAME_ENTRY_new(NULL)) == NULL)
221. > 		{ c.line=__LINE__; goto err2; }
222.   	M_ASN1_New(ret->bytes,BUF_MEM_new);
223.   	ret->modified=1;

X509_NAME *X509_NAME_new(void)
	{
	X509_NAME *ret=NULL;
	ASN1_CTX c;
	M_ASN1_New_Malloc(ret,X509_NAME);
	if ((ret->entries=sk_X509_NAME_ENTRY_new(NULL)) == NULL)
		{ c.line=__LINE__; goto err2; }
	M_ASN1_New(ret->bytes,BUF_MEM_new);
	ret->modified=1;
	return(ret);
	M_ASN1_New_Error(ASN1_F_X509_NAME_NEW);
	}
['X509_NAME *X509_NAME_new(void)\n\t{\n\tX509_NAME *ret=NULL;\n\tASN1_CTX c;\n\tM_ASN1_New_Malloc(ret,X509_NAME);\n\tif ((ret->entries=sk_X509_NAME_ENTRY_new(NULL)) == NULL)\n\t\t{ c.line=__LINE__; goto err2; }\n\tM_ASN1_New(ret->bytes,BUF_MEM_new);\n\tret->modified=1;\n\treturn(ret);\n\tM_ASN1_New_Error(ASN1_F_X509_NAME_NEW);\n\t}', 'IMPLEMENT_STACK_OF(X509_NAME_ENTRY)', 'STACK *sk_new(int (*c)())\n\t{\n\tSTACK *ret;\n\tint i;\n\tif ((ret=(STACK *)Malloc(sizeof(STACK))) == NULL)\n\t\tgoto err0;\n\tif ((ret->data=(char **)Malloc(sizeof(char *)*MIN_NODES)) == NULL)\n\t\tgoto err1;\n\tfor (i=0; i<MIN_NODES; i++)\n\t\tret->data[i]=NULL;\n\tret->comp=c;\n\tret->num_alloc=MIN_NODES;\n\tret->num=0;\n\tret->sorted=0;\n\treturn(ret);\nerr1:\n\tFree((char *)ret);\nerr0:\n\treturn(NULL);\n\t}']