From 9ded8bd8b2c7adb14d608ea55d18fba5af59bbc8 Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Sat, 18 May 2002 21:07:18 +0000 Subject: [PATCH] * fhandler_disk_file.cc (fhandler_disk_file::fstat): Make handling of nlink consistent for remote files. --- winsup/cygwin/ChangeLog | 5 +++++ winsup/cygwin/fhandler_disk_file.cc | 7 +++---- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 28a22d508..31559a0d9 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,8 @@ +2002-05-18 Christopher Faylor + + * fhandler_disk_file.cc (fhandler_disk_file::fstat): Make handling of + nlink consistent for remote files. + 2002-05-18 Christopher Faylor * path.cc (path_conv::check): Always set executable bit for executable diff --git a/winsup/cygwin/fhandler_disk_file.cc b/winsup/cygwin/fhandler_disk_file.cc index 38c6bd26f..99f8b7ab0 100644 --- a/winsup/cygwin/fhandler_disk_file.cc +++ b/winsup/cygwin/fhandler_disk_file.cc @@ -107,8 +107,7 @@ fhandler_disk_file::fstat (struct __stat64 *buf, path_conv *pc) /* Unfortunately the count of 2 confuses `find (1)' command. So let's try it with `1' as link count. */ if (pc->isdir ()) - buf->st_nlink = (pc->isremote () - ? 1 : num_entries (pc->get_win32 ())); + buf->st_nlink = pc->isremote () ? 1 : num_entries (pc->get_win32 ()); close (); } else if (pc->exists ()) @@ -118,8 +117,8 @@ fhandler_disk_file::fstat (struct __stat64 *buf, path_conv *pc) WIN32_FIND_DATA wfd; HANDLE handle; buf->st_nlink = 1; - if (pc->isdir () && pc->isremote ()) - buf->st_nlink = num_entries (pc->get_win32 ()); + if (pc->isdir ()) + buf->st_nlink = pc->isremote () ? 1 : num_entries (pc->get_win32 ()); buf->st_dev = FHDEVN (FH_DISK) << 8; buf->st_ino = hash_path_name (0, pc->get_win32 ()); if (pc->isdir ())