Author: pschweitzer
Date: Sat Jun 3 18:29:44 2017
New Revision: 74781
URL:
http://svn.reactos.org/svn/reactos?rev=74781&view=rev
Log:
[UDFS]
Our current storage stack iteration considers that any CDROM is read-only and forces it.
Reflect that fact in UDFS; we cannot assume that our device won't be readonly.
CORE-4375
Modified:
trunk/reactos/drivers/filesystems/udfs/volinfo.cpp
Modified: trunk/reactos/drivers/filesystems/udfs/volinfo.cpp
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/udfs/v…
==============================================================================
--- trunk/reactos/drivers/filesystems/udfs/volinfo.cpp [iso-8859-1] (original)
+++ trunk/reactos/drivers/filesystems/udfs/volinfo.cpp [iso-8859-1] Sat Jun 3 18:29:44
2017
@@ -462,8 +462,15 @@
KdPrint((" UDFQueryFsDeviceInfo: \n"));
// Update the output buffer.
- ASSERT(! (Vcb->TargetDeviceObject->Characteristics & (FILE_READ_ONLY_DEVICE
| FILE_WRITE_ONCE_MEDIA)));
- Buffer->Characteristics = Vcb->TargetDeviceObject->Characteristics &
~(FILE_READ_ONLY_DEVICE | FILE_WRITE_ONCE_MEDIA);
+ if (Vcb->TargetDeviceObject->DeviceType != FILE_DEVICE_CD_ROM &&
Vcb->TargetDeviceObject->DeviceType != FILE_DEVICE_DVD)
+ {
+ ASSERT(! (Vcb->TargetDeviceObject->Characteristics &
(FILE_READ_ONLY_DEVICE | FILE_WRITE_ONCE_MEDIA)));
+ Buffer->Characteristics = Vcb->TargetDeviceObject->Characteristics &
~(FILE_READ_ONLY_DEVICE | FILE_WRITE_ONCE_MEDIA);
+ }
+ else
+ {
+ Buffer->Characteristics = Vcb->TargetDeviceObject->Characteristics;
+ }
Buffer->DeviceType = Vcb->TargetDeviceObject->DeviceType;
KdPrint((" Characteristics %x, DeviceType %x\n",
Buffer->Characteristics, Buffer->DeviceType));
// Adjust the length variable