[Wine-patches] kernel32: Use drive types returned by mountmgr in the first place (eterbug #4061).
Alexander Morozov
amorozov на etersoft.ru
Ср Июл 15 19:49:06 MSD 2009
----------- следующая часть -----------
From 6116e7d3fe6898edc8b8381a0bd69a612dcd5887 Mon Sep 17 00:00:00 2001
From: Alexander Morozov <amorozov на etersoft.ru>
Date: Wed, 15 Jul 2009 19:45:28 +0400
Subject: [PATCH] kernel32: Use drive types returned by mountmgr in the first place (eterbug #4061).
---
dlls/kernel32/volume.c | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/dlls/kernel32/volume.c b/dlls/kernel32/volume.c
index 0f4161c..d986d17 100644
--- a/dlls/kernel32/volume.c
+++ b/dlls/kernel32/volume.c
@@ -1349,6 +1349,7 @@ UINT WINAPI GetDriveTypeW(LPCWSTR root) /* [in] String describing drive */
if (!open_device_root( root, &handle )) return DRIVE_NO_ROOT_DIR;
+ if ((ret = get_mountmgr_drive_type( root )) != DRIVE_UNKNOWN) goto ret;
status = NtQueryVolumeInformationFile( handle, &io, &info, sizeof(info), FileFsDeviceInformation );
NtClose( handle );
if (status != STATUS_SUCCESS)
@@ -1366,13 +1367,14 @@ UINT WINAPI GetDriveTypeW(LPCWSTR root) /* [in] String describing drive */
case FILE_DEVICE_DISK_FILE_SYSTEM:
if (info.Characteristics & FILE_REMOTE_DEVICE) ret = DRIVE_REMOTE;
else if (info.Characteristics & FILE_REMOVABLE_MEDIA) ret = DRIVE_REMOVABLE;
- else if ((ret = get_mountmgr_drive_type( root )) == DRIVE_UNKNOWN) ret = DRIVE_FIXED;
+ else ret = DRIVE_FIXED;
break;
default:
ret = DRIVE_UNKNOWN;
break;
}
}
+ret:
TRACE( "%s -> %d\n", debugstr_w(root), ret );
return ret;
}
--
1.6.3.3
Подробная информация о списке рассылки Wine-patches