hw/xfree86: fix segfault in config parser when config dir is missing

Treat a scandir error from a missing (or unusable) directory return as
if it simply returned no files at all, which is what we want.

cc: Paulo Zanoni <przanoni@gmail.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
This commit is contained in:
Keith Packard 2011-12-07 12:13:37 -08:00
parent fd976e4051
commit 3824f558cc

View File

@ -852,6 +852,10 @@ OpenConfigDir(const char *path, const char *cmdline, const char *projroot,
/* match files named *.conf */ /* match files named *.conf */
num = scandir(dirpath, &list, ConfigFilter, alphasort); num = scandir(dirpath, &list, ConfigFilter, alphasort);
if (num < 0) {
list = NULL;
num = 0;
}
found = AddConfigDirFiles(dirpath, list, num); found = AddConfigDirFiles(dirpath, list, num);
if (!found) { if (!found) {
free(dirpath); free(dirpath);