From: Pierre Schweitzer Date: Thu, 25 Feb 2016 20:49:31 +0000 (+0000) Subject: [NTFS] X-Git-Tag: ReactOS-0.4.1~428 X-Git-Url: https://git.reactos.org/?p=reactos.git;a=commitdiff_plain;h=0f018769008f556f930483f9d2382628019f106b;hp=6184b009f90aaa52d696eb686453f5fdd57fe181 [NTFS] Add a missing lock svn path=/trunk/; revision=70787 --- diff --git a/reactos/drivers/filesystems/ntfs/dirctl.c b/reactos/drivers/filesystems/ntfs/dirctl.c index c19bf6b77d0..82b8a7cb1b0 100644 --- a/reactos/drivers/filesystems/ntfs/dirctl.c +++ b/reactos/drivers/filesystems/ntfs/dirctl.c @@ -363,6 +363,13 @@ NtfsQueryDirectory(PNTFS_IRP_CONTEXT IrpContext) DPRINT("Buffer=%p tofind=%S\n", Buffer, Ccb->DirectorySearchPattern); + if (!ExAcquireResourceExclusiveLite(&DeviceExtension->DirResource, + BooleanFlagOn(IrpContext->Flags, IRPCONTEXT_CANWAIT))) + { + ExReleaseResourceLite(&Fcb->MainResource); + return STATUS_PENDING; + } + while (Status == STATUS_SUCCESS && BufferLength > 0) { Status = NtfsFindFileAt(DeviceExtension, @@ -469,6 +476,7 @@ NtfsQueryDirectory(PNTFS_IRP_CONTEXT IrpContext) Buffer0->NextEntryOffset = 0; } + ExReleaseResourceLite(&DeviceExtension->DirResource); ExReleaseResourceLite(&Fcb->MainResource); if (FileIndex > 0)