From 08d0aae07e75bd515f87981203eec8a82b674725 Mon Sep 17 00:00:00 2001 From: Aleksandar Andrejevic Date: Fri, 7 Aug 2015 03:30:05 +0000 Subject: [PATCH] [FASTFAT] Irp->UserBuffer being NULL doesn't indicate any error. It could be that the caller really wants the result stored at address NULL (which can be valid, and is valid by default for programs like NTVDM). svn path=/trunk/; revision=68607 --- reactos/drivers/filesystems/fastfat/rw.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/reactos/drivers/filesystems/fastfat/rw.c b/reactos/drivers/filesystems/fastfat/rw.c index c8644f43946..2ca5e703823 100644 --- a/reactos/drivers/filesystems/fastfat/rw.c +++ b/reactos/drivers/filesystems/fastfat/rw.c @@ -656,7 +656,7 @@ VfatRead( } Buffer = VfatGetUserBuffer(IrpContext->Irp, BooleanFlagOn(IrpContext->Irp->Flags, IRP_PAGING_IO)); - if (!Buffer) + if (!Buffer && IrpContext->Irp->MdlAddress) { Status = STATUS_INVALID_USER_BUFFER; goto ByeBye; @@ -927,7 +927,7 @@ VfatWrite( OldFileSize = Fcb->RFCB.FileSize; Buffer = VfatGetUserBuffer(IrpContext->Irp, BooleanFlagOn(IrpContext->Irp->Flags, IRP_PAGING_IO)); - if (!Buffer) + if (!Buffer && IrpContext->Irp->MdlAddress) { Status = STATUS_INVALID_USER_BUFFER; goto ByeBye;