Index: main/editline/readline.c =================================================================== --- main/editline/readline.c (revision 398365) +++ main/editline/readline.c (working copy) @@ -1236,8 +1236,11 @@ filename_len = strlen(filename); dir = opendir(dirname ? dirname : "."); - if (!dir) + if (!dir) { + free(filename); + free(dirname); return (NULL); /* cannot open the directory */ + } /* find the match */ while ((entry = readdir(dir)) != NULL) { @@ -1274,6 +1277,8 @@ } else temp = NULL; closedir(dir); + free(filename); + free(dirname); return (temp); }