mirror of
https://github.com/winfsp/winfsp.git
synced 2025-06-08 04:52:10 -05:00
sys: FspIopCompleteIrpEx:
- only update statistics if we actually have a reference to the DeviceObject
This commit is contained in:
parent
c9485ff214
commit
8f25dd6cab
@ -288,18 +288,22 @@ VOID FspIopCompleteIrpEx(PIRP Irp, NTSTATUS Result, BOOLEAN DeviceDereference)
|
|||||||
*/
|
*/
|
||||||
if (IRP_MJ_CREATE == IrpSp->MajorFunction)
|
if (IRP_MJ_CREATE == IrpSp->MajorFunction)
|
||||||
{
|
{
|
||||||
FSP_DEVICE_EXTENSION *DeviceExtension = FspDeviceExtension(DeviceObject);
|
/* only update statistics if we actually have a reference to the DeviceObject */
|
||||||
|
if (DeviceDereference)
|
||||||
if (FspFsvolDeviceExtensionKind == FspDeviceExtension(DeviceObject)->Kind)
|
|
||||||
{
|
{
|
||||||
FSP_STATISTICS *Statistics = FspStatistics(
|
FSP_DEVICE_EXTENSION *DeviceExtension = FspDeviceExtension(DeviceObject);
|
||||||
((FSP_FSVOL_DEVICE_EXTENSION *)DeviceExtension)->Statistics);
|
|
||||||
|
|
||||||
FspStatisticsInc(Statistics, Specific.CreateHits);
|
if (FspFsvolDeviceExtensionKind == FspDeviceExtension(DeviceObject)->Kind)
|
||||||
if (STATUS_SUCCESS == Result)
|
{
|
||||||
FspStatisticsInc(Statistics, Specific.SuccessfulCreates);
|
FSP_STATISTICS *Statistics = FspStatistics(
|
||||||
else
|
((FSP_FSVOL_DEVICE_EXTENSION *)DeviceExtension)->Statistics);
|
||||||
FspStatisticsInc(Statistics, Specific.FailedCreates);
|
|
||||||
|
FspStatisticsInc(Statistics, Specific.CreateHits);
|
||||||
|
if (STATUS_SUCCESS == Result)
|
||||||
|
FspStatisticsInc(Statistics, Specific.SuccessfulCreates);
|
||||||
|
else
|
||||||
|
FspStatisticsInc(Statistics, Specific.FailedCreates);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
Loading…
x
Reference in New Issue
Block a user