Zebediah Figura : ntdll: Don't translate Unix virtual disks to FILE_DEVICE_VIRTUAL_DISK.

Alexandre Julliard julliard at winehq.org
Fri Jul 10 16:30:31 CDT 2020


Module: wine
Branch: master
Commit: fb8a44f3ee50badd85af4b50fdbc1db28ce76ab0
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=fb8a44f3ee50badd85af4b50fdbc1db28ce76ab0

Author: Zebediah Figura <z.figura12 at gmail.com>
Date:   Thu Jul  9 22:39:00 2020 -0500

ntdll: Don't translate Unix virtual disks to FILE_DEVICE_VIRTUAL_DISK.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=36546
Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/ntdll/unix/file.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/dlls/ntdll/unix/file.c b/dlls/ntdll/unix/file.c
index af7c214984..3368d2105c 100644
--- a/dlls/ntdll/unix/file.c
+++ b/dlls/ntdll/unix/file.c
@@ -6029,12 +6029,15 @@ static NTSTATUS get_device_info( int fd, FILE_FS_DEVICE_INFORMATION *info )
             info->DeviceType = FILE_DEVICE_NETWORK_FILE_SYSTEM;
             info->Characteristics |= FILE_REMOTE_DEVICE;
             break;
-        case 0x01021994:  /* tmpfs */
-        case 0x28cd3d45:  /* cramfs */
         case 0x1373:      /* devfs */
         case 0x9fa0:      /* procfs */
             info->DeviceType = FILE_DEVICE_VIRTUAL_DISK;
             break;
+        case 0x01021994:  /* tmpfs */
+        case 0x28cd3d45:  /* cramfs */
+            /* Don't map these to FILE_DEVICE_VIRTUAL_DISK by default. Virtual
+             * filesystems are rare on Windows, and some programs refuse to
+             * recognize them as valid. */
         default:
             info->DeviceType = FILE_DEVICE_DISK_FILE_SYSTEM;
             break;
@@ -6078,8 +6081,9 @@ static NTSTATUS get_device_info( int fd, FILE_FS_DEVICE_INFORMATION *info )
                 info->Characteristics |= FILE_REMOVABLE_MEDIA;
                 break;
             case DKC_MD:
-                info->DeviceType = FILE_DEVICE_VIRTUAL_DISK;
-                break;
+            /* Don't map these to FILE_DEVICE_VIRTUAL_DISK by default. Virtual
+             * filesystems are rare on Windows, and some programs refuse to
+             * recognize them as valid. */
             default:
                 info->DeviceType = FILE_DEVICE_DISK_FILE_SYSTEM;
             }




More information about the wine-cvs mailing list