crypto/mem_dbg.c:683: error: NULL_DEREFERENCE
  pointer `lcl` last assigned on line 680 could be null and is dereferenced at line 683, column 4.
Showing all 7 steps of the trace


crypto/mem_dbg.c:664:1: start of procedure print_leak_doall_arg()
662.   	} MEM_LEAK;
663.   
664. > static void print_leak_doall_arg(const MEM *m, MEM_LEAK *l)
665.   	{
666.   	char buf[1024];

crypto/mem_dbg.c:667:2: 
665.   	{
666.   	char buf[1024];
667. > 	char *bufp = buf;
668.   	APP_INFO *amip;
669.   	size_t ami_cnt;

crypto/mem_dbg.c:670:2: 
668.   	APP_INFO *amip;
669.   	size_t ami_cnt;
670. > 	struct tm *lcl = NULL;
671.   	CRYPTO_THREADID ti;
672.   

crypto/mem_dbg.c:675:5: Taking false branch
673.   #define BUF_REMAIN (sizeof buf - (size_t)(bufp - buf))
674.   
675.   	if(m->addr == (char *)l->bio)
           ^
676.   	    return;
677.   

crypto/mem_dbg.c:678:6: Taking true branch
676.   	    return;
677.   
678.   	if (options & V_CRYPTO_MDEBUG_TIME)
            ^
679.   		{
680.   		lcl = localtime(&m->time);

crypto/mem_dbg.c:680:3: 
678.   	if (options & V_CRYPTO_MDEBUG_TIME)
679.   		{
680. > 		lcl = localtime(&m->time);
681.   	
682.   		BIO_snprintf(bufp, BUF_REMAIN, "[%02d:%02d:%02d] ",

crypto/mem_dbg.c:682:3: 
680.   		lcl = localtime(&m->time);
681.   	
682. > 		BIO_snprintf(bufp, BUF_REMAIN, "[%02d:%02d:%02d] ",
683.   			lcl->tm_hour,lcl->tm_min,lcl->tm_sec);
684.   		bufp += strlen(bufp);
