Kaydet (Commit) 4de8c4a3 authored tarafından Francois Tigeot's avatar Francois Tigeot Kaydeden (comit) Jan Holesovsky

Remove strange filesystems-related enum.

üst c0a5b2b3
......@@ -296,8 +296,6 @@ public:
FSysPathStyle eParser = FSYS_STYLE_HOST );
~DirEntry();
sal_Bool IsCaseSensitive (FSysPathStyle eFormatter = FSYS_STYLE_HOST) const;
sal_uIntPtr GetError() const { return nError; }
sal_Bool IsValid() const;
DirEntryFlag GetFlag() const { return eFlag; };
......
......@@ -1662,13 +1662,13 @@ sal_Bool DirEntry::ImpToRel( String aCurStr )
aThis.ToAbs();
String aThisStr( aThis.GetFull( FSYS_STYLE_HPFS ) );
// #109512 preserve case of path even if caseinsensitive
// preserve case of path even if caseinsensitive
String aThisCompareStr( aThisStr ), aCurCompareStr( aCurStr );
if ( ! IsCaseSensitive() )
{
aThisCompareStr.ToLowerAscii();
aCurCompareStr.ToLowerAscii();
}
#if defined(WNT)
aThisCompareStr.ToLowerAscii();
aCurCompareStr.ToLowerAscii();
#endif
// "Ubereinstimmung pr"ufen
sal_uInt16 nPos = aThisCompareStr.Match( aCurCompareStr );
......
......@@ -191,81 +191,6 @@ static sal_Bool GetMountEntry(dev_t dev, struct mymnttab *mytab)
#endif
/************************************************************************
|*
|* DirEntry::IsCaseSensitive()
|*
*************************************************************************/
sal_Bool DirEntry::IsCaseSensitive( FSysPathStyle eFormatter ) const
{
if (eFormatter==FSYS_STYLE_HOST)
{
#if defined(NETBSD) || defined(DRAGONFLY)
return sal_True;
#else
struct stat buf;
DirEntry aPath(*this);
aPath.ToAbs();
while (stat (ByteString(aPath.GetFull(), osl_getThreadTextEncoding()).GetBuffer(), &buf))
{
if (aPath.Level() == 1)
{
return sal_True; // ich bin unter UNIX, also ist der default im Zweifelsfall case sensitiv
}
aPath = aPath [1];
}
struct mymnttab fsmnt;
GetMountEntry(buf.st_dev, &fsmnt);
if ((fsmnt.mymnttab_filesystem.CompareTo("msdos")==COMPARE_EQUAL) ||
(fsmnt.mymnttab_filesystem.CompareTo("umsdos")==COMPARE_EQUAL) ||
(fsmnt.mymnttab_filesystem.CompareTo("vfat")==COMPARE_EQUAL) ||
(fsmnt.mymnttab_filesystem.CompareTo("hpfs")==COMPARE_EQUAL) ||
(fsmnt.mymnttab_filesystem.CompareTo("smb") ==COMPARE_EQUAL) ||
(fsmnt.mymnttab_filesystem.CompareTo("ncpfs")==COMPARE_EQUAL))
{
return sal_False;
}
else
{
return sal_True;
}
#endif
}
else
{
sal_Bool isCaseSensitive = sal_True; // ich bin unter UNIX, also ist der default im Zweifelsfall case sensitiv
switch ( eFormatter )
{
case FSYS_STYLE_MAC:
case FSYS_STYLE_FAT:
case FSYS_STYLE_VFAT:
case FSYS_STYLE_NTFS:
case FSYS_STYLE_NWFS:
case FSYS_STYLE_HPFS:
{
isCaseSensitive = sal_False;
break;
}
case FSYS_STYLE_SYSV:
case FSYS_STYLE_BSD:
case FSYS_STYLE_DETECT:
{
isCaseSensitive = sal_True;
break;
}
default:
{
isCaseSensitive = sal_True; // ich bin unter UNIX, also ist der default im Zweifelsfall case sensitiv
break;
}
}
return isCaseSensitive;
}
}
/************************************************************************
|*
......
......@@ -167,91 +167,6 @@ FSysPathStyle DirEntry::GetPathStyle( const String &rDevice )
return eStyle;
}
/*************************************************************************
|*
|* DirEntry::IsCaseSensitive()
|*
*************************************************************************/
sal_Bool DirEntry::IsCaseSensitive( FSysPathStyle eFormatter ) const
{
if (eFormatter==FSYS_STYLE_HOST)
{
/*
DirEntry aRoot(*this);
aRoot.ToAbs();
aRoot = aRoot[Level()-1];
String aRootDir = aRoot.GetFull(FSYS_STYLE_HOST, sal_True);
char sVolumeName[256];
DWORD nVolumeSerial;
DWORD nMaxCompLen;
DWORD nFlags;
char sFileSysName[16];
if ( GetVolumeInformation( (char*) aRootDir.GetStr(),
sVolumeName,
256,
(LPDWORD) &nVolumeSerial,
(LPDWORD) &nMaxCompLen,
(LPDWORD) &nFlags,
sFileSysName,
16 ))
{
return (nFlags & FS_CASE_SENSITIVE) ? sal_True : sal_False;
}
else
{
return sal_False;
}
*/
//
// guter versuch, aber FS_CASE_SENSITIVE ist D?nnsinn in T?ten:
//
// sFileSysName FS_CASE_SENSITIVE
// FAT sal_False
// NTFS sal_True !!!
// NWCompat sal_False
// Samba sal_False
//
// NT spricht auch NTFS lediglich case preserving an, also ist unter NT alles case insensitiv
//
return sal_False;
}
else
{
sal_Bool isCaseSensitive = sal_False; // ich bin unter win32, also ist der default case insensitiv
switch ( eFormatter )
{
case FSYS_STYLE_MAC:
case FSYS_STYLE_FAT:
case FSYS_STYLE_VFAT:
case FSYS_STYLE_NTFS:
case FSYS_STYLE_NWFS:
case FSYS_STYLE_HPFS:
case FSYS_STYLE_DETECT:
{
isCaseSensitive = sal_False;
break;
}
case FSYS_STYLE_SYSV:
case FSYS_STYLE_BSD:
{
isCaseSensitive = sal_True;
break;
}
default:
{
isCaseSensitive = sal_False; // ich bin unter win32, also ist der default case insensitiv
break;
}
}
return isCaseSensitive;
}
}
/*************************************************************************
|*
|* DirEntry::ToAbs()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment