Author: pschweitzer Date: Sun Apr 6 16:30:29 2014 New Revision: 62664
URL: http://svn.reactos.org/svn/reactos?rev=62664&view=rev Log: [MOUNTMGR] - Fix broken logic in OnlineMountedVolumes() - Add missing return in MountMgrNotifyNameChange()
CID #515247 CID #716002
Modified: trunk/reactos/drivers/filters/mountmgr/database.c trunk/reactos/drivers/filters/mountmgr/notify.c
Modified: trunk/reactos/drivers/filters/mountmgr/database.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filters/mountmgr/da... ============================================================================== --- trunk/reactos/drivers/filters/mountmgr/database.c [iso-8859-1] (original) +++ trunk/reactos/drivers/filters/mountmgr/database.c [iso-8859-1] Sun Apr 6 16:30:29 2014 @@ -746,10 +746,11 @@ return; }
+ RestartScan = TRUE; + /* Query mount points */ while (TRUE) { - RestartScan = TRUE; SymbolicName.Length = 0; SymbolicName.MaximumLength = sizeof(SymbolicNameBuffer); SymbolicName.Buffer = SymbolicNameBuffer; @@ -771,8 +772,7 @@ if (ReparsePointInformation.FileReference == SavedReparsePointInformation.FileReference && ReparsePointInformation.Tag == SavedReparsePointInformation.Tag) { - ZwClose(Handle); - return; + break; } } else @@ -782,8 +782,7 @@
if (!NT_SUCCESS(Status) || ReparsePointInformation.Tag != IO_REPARSE_TAG_MOUNT_POINT) { - ZwClose(Handle); - return; + break; }
/* Get the volume name associated to the mount point */ @@ -813,6 +812,8 @@ PostOnlineNotification(DeviceExtension, &VolumeDeviceInformation->SymbolicName); } } + + ZwClose(Handle); }
/*
Modified: trunk/reactos/drivers/filters/mountmgr/notify.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filters/mountmgr/no... ============================================================================== --- trunk/reactos/drivers/filters/mountmgr/notify.c [iso-8859-1] (original) +++ trunk/reactos/drivers/filters/mountmgr/notify.c [iso-8859-1] Sun Apr 6 16:30:29 2014 @@ -414,6 +414,7 @@ { ObDereferenceObject(DeviceObject); ObDereferenceObject(FileObject); + return; }
Stack = IoGetNextIrpStackLocation(Irp);