#include <sys/types.h> /* Required on some systems for dirent.h. */
+#include <errno.h>
#include <dirent.h>
#include <stdbool.h>
+#include <stdlib.h>
#include <unistd.h> /* XXXDCL Required for ?. */
#include <isc/lang.h>
dir->filename = NULL;
if (dir->handle != NULL) {
+ errno = 0;
dirent = readdir(dir->handle);
- if (dirent != NULL)
+ if (dirent != NULL) {
dir->filename = dirent->d_name;
+ } else {
+ if (errno != 0) {
+ exit(1);
+ }
+ }
}
if (dir->filename != NULL)