diff --git a/dll/win32/msi/dialog.c b/dll/win32/msi/dialog.c index 8e4c1511081..1bea93dc081 100644 --- a/dll/win32/msi/dialog.c +++ b/dll/win32/msi/dialog.c @@ -3206,7 +3206,11 @@ static void msi_dialog_vcl_add_drives( msi_dialog *dialog, msi_control *control WCHAR cost_text[MAX_PATH]; LPWSTR drives, ptr; LVITEMW lvitem; +#ifdef __REACTOS__ + DWORD size; +#else DWORD size, flags; +#endif int i = 0; cost = msi_vcl_get_cost(dialog); @@ -3223,8 +3227,12 @@ static void msi_dialog_vcl_add_drives( msi_dialog *dialog, msi_control *control ptr = drives; while (*ptr) { +#ifdef __REACTOS__ + if (GetDriveTypeW(ptr) != DRIVE_FIXED) +#else if (GetVolumeInformationW(ptr, NULL, 0, NULL, 0, &flags, NULL, 0) && flags & FILE_READ_ONLY_VOLUME) +#endif { ptr += lstrlenW(ptr) + 1; continue;