[NTOSKRNL] A bit of cleanup in Io*FilterContext()

This commit is contained in:
Pierre Schweitzer 2018-10-04 22:24:52 +02:00
parent 5f0d02eb52
commit 2a182931b6
No known key found for this signature in database
GPG key ID: 7545556C3D585B0B

View file

@ -2441,7 +2441,7 @@ PVOID
NTAPI
IoGetFileObjectFilterContext(IN PFILE_OBJECT FileObject)
{
if (FileObject->Flags & FO_FILE_OBJECT_HAS_EXTENSION)
if (BooleanFlagOn(FileObject->Flags, FO_FILE_OBJECT_HAS_EXTENSION))
{
PFILE_OBJECT_EXTENSION FileObjectExtension;
@ -2461,7 +2461,7 @@ IoChangeFileObjectFilterContext(IN PFILE_OBJECT FileObject,
ULONG_PTR Success;
PFILE_OBJECT_EXTENSION FileObjectExtension;
if (!(FileObject->Flags & FO_FILE_OBJECT_HAS_EXTENSION))
if (!BooleanFlagOn(FileObject->Flags, FO_FILE_OBJECT_HAS_EXTENSION))
{
return STATUS_INVALID_PARAMETER;
}
@ -2472,7 +2472,7 @@ IoChangeFileObjectFilterContext(IN PFILE_OBJECT FileObject,
/* If define, just set the new value if not value is set
* Success will only contain old value. It is valid if it is NULL
*/
Success = InterlockedCompareExchange((volatile LONG *)&FileObjectExtension->FilterContext, (ULONG_PTR)FilterContext, 0);
Success = (ULONG_PTR)InterlockedCompareExchangePointer(&FileObjectExtension->FilterContext, FilterContext, NULL);
}
else
{
@ -2483,7 +2483,7 @@ IoChangeFileObjectFilterContext(IN PFILE_OBJECT FileObject,
* If it matches (and thus, we reset), Success will contain 0
* Otherwise, it will contain a non-zero value.
*/
Success = InterlockedCompareExchange((volatile LONG *)&FileObjectExtension->FilterContext, 0, (ULONG_PTR)FilterContext) - (ULONG_PTR)FilterContext;
Success = (ULONG_PTR)InterlockedCompareExchangePointer(&FileObjectExtension->FilterContext, NULL, FilterContext) - (ULONG_PTR)FilterContext;
}
/* If success isn't 0, it means we failed somewhere (set or unset) */