crypto/ui/ui_lib.c:182: error: MEMORY_LEAK
  memory dynamically allocated by call to `strdup()` at line 173, column 15 is not reachable after line 182, column 3.
Showing all 6 steps of the trace


crypto/ui/ui_lib.c:166:1: start of procedure UI_dup_input_string()
164.   
165.   /* Same as UI_add_input_string(), excepts it takes a copy of the prompt */
166. > int UI_dup_input_string(UI *ui, const char *prompt, int echo_p,
167.   	char *result_buf, int minsize, int maxsize)
168.   	{

crypto/ui/ui_lib.c:169:2: 
167.   	char *result_buf, int minsize, int maxsize)
168.   	{
169. > 	char *prompt_copy=NULL;
170.   
171.   	if (prompt)

crypto/ui/ui_lib.c:171:6: Taking true branch
169.   	char *prompt_copy=NULL;
170.   
171.   	if (prompt)
            ^
172.   		{
173.   		prompt_copy=strdup(prompt);

crypto/ui/ui_lib.c:173:3: 
171.   	if (prompt)
172.   		{
173. > 		prompt_copy=strdup(prompt);
174.   		if (prompt_copy == NULL)
175.   			{

crypto/ui/ui_lib.c:174:7: Taking false branch
172.   		{
173.   		prompt_copy=strdup(prompt);
174.   		if (prompt_copy == NULL)
             ^
175.   			{
176.   			UIerr(UI_F_UI_DUP_INPUT_STRING,ERR_R_MALLOC_FAILURE);

crypto/ui/ui_lib.c:182:3: Condition is false
180.   	
181.   	return general_allocate_string(ui, prompt, 1,
182.   		echo_p?UI_STRING_ECHO:UI_STRING_NOECHO,
         ^
183.   		result_buf, minsize, maxsize, NULL);
184.   	}
