msi: Don't consider read-only drives when enumerating volumes.

Signed-off-by: Pierre Schweitzer <pierre@reactos.org>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Pierre Schweitzer 2018-11-03 18:33:16 +01:00 committed by Alexandre Julliard
parent 84e6b33191
commit 0dd0d879a1
1 changed files with 8 additions and 1 deletions

View File

@ -3289,7 +3289,7 @@ static void msi_dialog_vcl_add_drives( msi_dialog *dialog, msi_control *control
WCHAR cost_text[MAX_PATH];
LPWSTR drives, ptr;
LVITEMW lvitem;
DWORD size;
DWORD size, flags;
int i = 0;
cost = msi_vcl_get_cost(dialog);
@ -3306,6 +3306,13 @@ static void msi_dialog_vcl_add_drives( msi_dialog *dialog, msi_control *control
ptr = drives;
while (*ptr)
{
if (GetVolumeInformationW(ptr, NULL, 0, NULL, 0, &flags, NULL, 0) &&
flags & FILE_READ_ONLY_VOLUME)
{
ptr += lstrlenW(ptr) + 1;
continue;
}
lvitem.mask = LVIF_TEXT;
lvitem.iItem = i;
lvitem.iSubItem = 0;