kernel32: Improve GetVolumeInformation filesystem flags I set flags value according to my tests which may differ from a windows version to another.

Alexandre Goujon ale.goujon at gmail.com
Sun Aug 28 06:05:02 CDT 2011


---
 dlls/kernel32/volume.c |   10 +++++++---
 1 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/dlls/kernel32/volume.c b/dlls/kernel32/volume.c
index 41adf25..04acaf5 100644
--- a/dlls/kernel32/volume.c
+++ b/dlls/kernel32/volume.c
@@ -776,7 +776,7 @@ fill_fs_info:  /* now fill in the information that depends on the file system ty
     case FS_ISO9660:
         if (fsname) lstrcpynW( fsname, cdfsW, fsname_len );
         if (filename_len) *filename_len = 221;
-        if (flags) *flags = FILE_READ_ONLY_VOLUME;
+        if (flags) *flags = FILE_READ_ONLY_VOLUME | FILE_CASE_SENSITIVE_SEARCH;
         break;
     case FS_UDF:
         if (fsname) lstrcpynW( fsname, udfW, fsname_len );
@@ -786,15 +786,19 @@ fill_fs_info:  /* now fill in the information that depends on the file system ty
         break;
     case FS_FAT1216:
         if (fsname) lstrcpynW( fsname, fatW, fsname_len );
+    /* fallthrough */
     case FS_FAT32:
         if (type == FS_FAT32 && fsname) lstrcpynW( fsname, fat32W, fsname_len );
         if (filename_len) *filename_len = 255;
-        if (flags) *flags = FILE_CASE_PRESERVED_NAMES;  /* FIXME */
+        if (flags) *flags = FILE_UNICODE_ON_DISK | FILE_CASE_PRESERVED_NAMES;
         break;
     default:
         if (fsname) lstrcpynW( fsname, ntfsW, fsname_len );
         if (filename_len) *filename_len = 255;
-        if (flags) *flags = FILE_CASE_PRESERVED_NAMES;
+        if (flags) *flags = FILE_NAMED_STREAMS | FILE_SUPPORTS_ENCRYPTION | FILE_SUPPORTS_OBJECT_IDS
+                | FILE_SUPPORTS_REPARSE_POINTS | FILE_SUPPORTS_SPARSE_FILES | FILE_VOLUME_QUOTAS
+                | FILE_FILE_COMPRESSION | FILE_PERSISTENT_ACLS | FILE_UNICODE_ON_DISK
+                | FILE_CASE_PRESERVED_NAMES | FILE_CASE_SENSITIVE_SEARCH;
         break;
     }
     ret = TRUE;
-- 
1.7.4.1




More information about the wine-patches mailing list