From 43616e5526861e4e6afeafb2f9cf4d4626a237b6 Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Thu, 29 Jan 2009 20:32:08 +0000 Subject: * fhandler_disk_file.cc (fhandler_disk_file::readdir): Fix inode number evaluation for faked "." entry. * mount.cc (fs_info::update): Move setting of is_cdrom after checking for caseinsensitivity. Recognize UDF in is_cdrom case and set caseinsensitive flag according to UDF brokenness determined by OS. Add comment to explain why. * mount.h (class fs_info): Add is_udf status flag. * path.cc (symlink_info::check): Add workaround for UDF bug in terms of casesensitivity on certain OSes. * wincap.h (wincaps::has_broken_udf): New element. (wincaps::has_broken_udf): New element --- winsup/cygwin/wincap.cc | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'winsup/cygwin/wincap.cc') diff --git a/winsup/cygwin/wincap.cc b/winsup/cygwin/wincap.cc index 9fc2b211f..082343a40 100644 --- a/winsup/cygwin/wincap.cc +++ b/winsup/cygwin/wincap.cc @@ -53,6 +53,7 @@ wincaps wincap_unknown __attribute__((section (".cygwin_dll_common"), shared)) = ts_has_dep_problem:false, has_recvmsg:false, has_sendmsg:false, + has_broken_udf:false, }; wincaps wincap_nt4 __attribute__((section (".cygwin_dll_common"), shared)) = { @@ -88,6 +89,7 @@ wincaps wincap_nt4 __attribute__((section (".cygwin_dll_common"), shared)) = { ts_has_dep_problem:false, has_recvmsg:false, has_sendmsg:false, + has_broken_udf:false, }; wincaps wincap_nt4sp4 __attribute__((section (".cygwin_dll_common"), shared)) = { @@ -123,6 +125,7 @@ wincaps wincap_nt4sp4 __attribute__((section (".cygwin_dll_common"), shared)) = ts_has_dep_problem:false, has_recvmsg:false, has_sendmsg:false, + has_broken_udf:false, }; wincaps wincap_2000 __attribute__((section (".cygwin_dll_common"), shared)) = { @@ -158,6 +161,7 @@ wincaps wincap_2000 __attribute__((section (".cygwin_dll_common"), shared)) = { ts_has_dep_problem:false, has_recvmsg:false, has_sendmsg:false, + has_broken_udf:true, }; wincaps wincap_2000sp4 __attribute__((section (".cygwin_dll_common"), shared)) = { @@ -193,6 +197,7 @@ wincaps wincap_2000sp4 __attribute__((section (".cygwin_dll_common"), shared)) = ts_has_dep_problem:false, has_recvmsg:false, has_sendmsg:false, + has_broken_udf:true, }; wincaps wincap_xp __attribute__((section (".cygwin_dll_common"), shared)) = { @@ -228,6 +233,7 @@ wincaps wincap_xp __attribute__((section (".cygwin_dll_common"), shared)) = { ts_has_dep_problem:false, has_recvmsg:true, has_sendmsg:false, + has_broken_udf:true, }; wincaps wincap_xpsp1 __attribute__((section (".cygwin_dll_common"), shared)) = { @@ -263,6 +269,7 @@ wincaps wincap_xpsp1 __attribute__((section (".cygwin_dll_common"), shared)) = { ts_has_dep_problem:false, has_recvmsg:true, has_sendmsg:false, + has_broken_udf:true, }; wincaps wincap_xpsp2 __attribute__((section (".cygwin_dll_common"), shared)) = { @@ -298,6 +305,7 @@ wincaps wincap_xpsp2 __attribute__((section (".cygwin_dll_common"), shared)) = { ts_has_dep_problem:false, has_recvmsg:true, has_sendmsg:false, + has_broken_udf:true, }; wincaps wincap_2003 __attribute__((section (".cygwin_dll_common"), shared)) = { @@ -333,6 +341,7 @@ wincaps wincap_2003 __attribute__((section (".cygwin_dll_common"), shared)) = { ts_has_dep_problem:false, has_recvmsg:true, has_sendmsg:false, + has_broken_udf:true, }; wincaps wincap_vista __attribute__((section (".cygwin_dll_common"), shared)) = { @@ -368,6 +377,7 @@ wincaps wincap_vista __attribute__((section (".cygwin_dll_common"), shared)) = { ts_has_dep_problem:false, has_recvmsg:true, has_sendmsg:true, + has_broken_udf:false, }; wincapc wincap __attribute__((section (".cygwin_dll_common"), shared)); -- cgit v1.2.3