From bf2a486a385baa347927e67da44fb6e2cd105fd4 Mon Sep 17 00:00:00 2001 From: corinna Date: Thu, 16 Aug 2007 14:10:04 +0000 Subject: [PATCH] * fhandler.h (fhandler_base::get_namehash): Use NT native path. * fhandler_disk_file.cc (readdir_get_ino): Ditto in call to hash_path_name. --- winsup/cygwin/ChangeLog | 6 ++++++ winsup/cygwin/fhandler.h | 2 +- winsup/cygwin/fhandler_disk_file.cc | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 9c953eb46f..bc701fd5ae 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,5 +1,11 @@ 2007-08-16 Corinna Vinschen + * fhandler.h (fhandler_base::get_namehash): Use NT native path. + * fhandler_disk_file.cc (readdir_get_ino): Ditto in call to + hash_path_name. + +2007-08-16 Corinna Vinschen + * ntdll.h (RtlCreateUnicodeStringFromAsciiz): Fix declaration. (RtlUpcaseUnicodeChar): Declare. * path.cc (hash_path_name): Split into three functions, taking diff --git a/winsup/cygwin/fhandler.h b/winsup/cygwin/fhandler.h index 56abcfbceb..665dd51e1f 100644 --- a/winsup/cygwin/fhandler.h +++ b/winsup/cygwin/fhandler.h @@ -251,7 +251,7 @@ class fhandler_base bool has_attribute (DWORD x) const {return pc.has_attribute (x);} const char *get_name () const { return pc.normalized_path; } const char *get_win32_name () { return pc.get_win32 (); } - __ino64_t get_namehash () { return namehash ?: namehash = hash_path_name (0, get_win32_name ()); } + __ino64_t get_namehash () { return namehash ?: namehash = hash_path_name (0, pc.get_nt_native_path ()); } /* Returns name used for /proc//fd in buf. */ virtual char *get_proc_fd_name (char *buf); diff --git a/winsup/cygwin/fhandler_disk_file.cc b/winsup/cygwin/fhandler_disk_file.cc index 049928c981..cccd440f4a 100644 --- a/winsup/cygwin/fhandler_disk_file.cc +++ b/winsup/cygwin/fhandler_disk_file.cc @@ -1682,7 +1682,7 @@ readdir_get_ino (const char *path, bool dot_dot) ino = st.st_ino; } else if (!pc.hasgood_inode ()) - ino = hash_path_name (0, pc); + ino = hash_path_name (0, pc.get_nt_native_path ()); else if (NT_SUCCESS (NtOpenFile (&hdl, READ_CONTROL, pc.get_object_attr (attr, sec_none_nih), &io, FILE_SHARE_VALID_FLAGS, -- 2.11.0