"Most code should not directly call the platform-specific ObfDereferenceObject() function but use the ObDereferenceObject() macro instead."
CORE-16081
ExDeleteResourceLite(&DeviceExt->FatResource);
/* Dismount our device if possible */
- ObfDereferenceObject(DeviceExt->StorageDevice);
+ ObDereferenceObject(DeviceExt->StorageDevice);
IoDeleteDevice(DeviceExt->VolumeDevice);
}
NextDevice = IoGetLowerDeviceObject(AttachedDevice);
/* Remove the reference we added */
- Count = ObfDereferenceObject(AttachedDevice);
+ Count = ObDereferenceObject(AttachedDevice);
/* Bail if this is the last one */
if (NextDevice == NULL) return Count;
IoDeleteDevice(AttachedDevice);
/* Remove the reference we added so the delete can complete */
- return ObfDereferenceObject(AttachedDevice);
+ return ObDereferenceObject(AttachedDevice);
}
DRIVER_FS_NOTIFICATION FltpFsNotification;
if (NT_SUCCESS(Status))
{
FltpFsNotification(RawDeviceObject, TRUE);
- ObfDereferenceObject(RawFileObject);
+ ObDereferenceObject(RawFileObject);
}
RtlInitUnicodeString(&ObjectName, L"\\Device\\RawCdRom");
if (NT_SUCCESS(Status))
{
FltpFsNotification(RawDeviceObject, TRUE);
- ObfDereferenceObject(RawFileObject);
+ ObDereferenceObject(RawFileObject);
}
/* We're done, clear the initializing flag */
FltpClientPortDelete(PVOID Object)
{
PFLT_PORT_OBJECT PortObject = (PFLT_PORT_OBJECT)Object;
- ObfDereferenceObject(PortObject->ServerPort);
+ ObDereferenceObject(PortObject->ServerPort);
}
if (ClientPortObjectType)
{
ObMakeTemporaryObject(ClientPortObjectType);
- ObfDereferenceObject(ClientPortObjectType);
+ ObDereferenceObject(ClientPortObjectType);
ClientPortObjectType = NULL;
}
if (ServerPortObjectType)
{
ObMakeTemporaryObject(ServerPortObjectType);
- ObfDereferenceObject(ServerPortObjectType);
+ ObDereferenceObject(ServerPortObjectType);
ServerPortObjectType = NULL;
}
}
{
if (ClientPortObject)
{
- ObfDereferenceObject(ClientPortObject);
+ ObDereferenceObject(ClientPortObject);
}
if (PortHandle)
else if (ServerPortObject)
{
InterlockedDecrement(&ServerPortObject->NumberOfConnections);
- ObfDereferenceObject(ServerPortObject);
+ ObDereferenceObject(ServerPortObject);
}
if (PortCCB)
/* If we dropped oplock, remove our extra ref */
if (Deref)
{
- ObfDereferenceObject(Oplock->FileObject);
+ ObDereferenceObject(Oplock->FileObject);
}
/* And unset FO: no oplock left or shared */
Oplock->FileObject = NULL;
}
/* Dismount our device if possible */
- ObfDereferenceObject(Vcb->TargetDeviceObject);
+ ObDereferenceObject(Vcb->TargetDeviceObject);
IoDeleteDevice((PDEVICE_OBJECT)CONTAINING_RECORD(Vcb,
VOLUME_DEVICE_OBJECT,
Vcb));
/* Release useless device map if required */
if (NewDeviceMap != NULL)
{
- ObfDereferenceObject(DirectoryObject);
+ ObDereferenceObject(DirectoryObject);
ExFreePoolWithTag(NewDeviceMap, 'mDbO');
}
/* Release useless device map if required */
if (NewDeviceMap != NULL)
{
- ObfDereferenceObject(DirectoryObject);
+ ObDereferenceObject(DirectoryObject);
ExFreePoolWithTag(NewDeviceMap, 'mDbO');
}
/* Wait for the thread to finish and dereference it */
KeWaitForSingleObject(ShutDownWaitEntry->Thread, 0, 0, 0, 0);
- ObfDereferenceObject(ShutDownWaitEntry->Thread);
+ ObDereferenceObject(ShutDownWaitEntry->Thread);
/* Finally free the entry */
ExFreePoolWithTag(ShutDownWaitEntry, 'LSoP');
}
KeLeaveGuardedRegionThread(CurrentThread);
- ObfDereferenceObject(Job);
+ ObDereferenceObject(Job);
return Status;
}
if (!NT_SUCCESS(Status))
{
DPRINT1("ObOpenObjectByPointer failed: 0x%lx\n", Status);
- ObfDereferenceObject(GuidObject);
+ ObDereferenceObject(GuidObject);
GuidObject = NULL;
}