mirror of
https://github.com/reactos/reactos.git
synced 2024-11-01 12:26:32 +00:00
7e89227a00
1. MountMgrMountedDeviceArrival(): Fix the conditions under which the device's online notifications are skipped (SkipNotifications == TRUE) and fix the code comments. Now, things make much more sense: online notifications are skipped when the device is already offline or is a legacy (NT <= 4) fault-tolerant volume (see point 2 below), or is NOT mounted (doesn't have a drive letter). Previously, we were sending an online notification if the device was NOT mounted (why?!...) or if it was deemed as "valid" (wrongly determined, see point 2 below). 2. QueryDeviceInformation(): * The usage of the "Valid" parameter didn't make much sense. Indeed, when a partition/volume device is reported to the Mount Manager, it's already valid. (Also, setting "Valid" to TRUE only in the case of an MBR partition while ignoring GPT ones, and resetting it to FALSE if IOCTL_STORAGE_GET_DEVICE_NUMBER returned success, pointed to something incorrect was going on.) Instead, what we are checking here is whether the device is a legacy fault-tolerant volume: such volume can only reside on an MBR disk, have the expected partition type, and does not really reside on a specific storage device (hence the check for IOCTL_STORAGE_GET_DEVICE_NUMBER returning failure). * Take also the opportunity to SAL2-ify the function. |
||
---|---|---|
.. | ||
CMakeLists.txt | ||
database.c | ||
device.c | ||
mntmgr.h | ||
mountmgr.c | ||
mountmgr.rc | ||
notify.c | ||
point.c | ||
symlink.c | ||
uniqueid.c |