From 5f5c6f7fa97ab11856b0bb1f71bf7ec954e04c71 Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Tue, 23 Aug 2005 03:58:09 +0000 Subject: * dir.cc (readdir_worker): Make static. Only add '.' and '..' when readdir fails due to ENMFILE. * fhandler_disk_file.cc (fhandler_disk_file::readdir): Only close handle on error != ENMFILE. --- winsup/cygwin/fhandler_disk_file.cc | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'winsup/cygwin/fhandler_disk_file.cc') diff --git a/winsup/cygwin/fhandler_disk_file.cc b/winsup/cygwin/fhandler_disk_file.cc index f26c65dd8..f0d58de73 100644 --- a/winsup/cygwin/fhandler_disk_file.cc +++ b/winsup/cygwin/fhandler_disk_file.cc @@ -1399,8 +1399,11 @@ fhandler_disk_file::readdir (DIR *dir, dirent *de) else { res = geterrno_from_win_error (); - FindClose (dir->__handle); - dir->__handle = INVALID_HANDLE_VALUE; + if (res != ENMFILE) + { + FindClose (dir->__handle); + dir->__handle = INVALID_HANDLE_VALUE; + } goto out; } } -- cgit v1.2.3