https://git.reactos.org/?p=reactos.git;a=commitdiff;h=f4d29a74aabf7e5f4cb74a1694de08cd02fe7879

commit f4d29a74aabf7e5f4cb74a1694de08cd02fe7879
Author:     Pierre Schweitzer <pie...@reactos.org>
AuthorDate: Sat Dec 1 21:50:54 2018 +0100
Commit:     Pierre Schweitzer <pie...@reactos.org>
CommitDate: Sat Dec 1 21:52:55 2018 +0100

    [NTFS] Don't perform overzealous checks on bitmap while reading a directory
    
    This avoids partial direactory reads where we believe they are corrupted
    while they are not.
---
 drivers/filesystems/ntfs/mft.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/drivers/filesystems/ntfs/mft.c b/drivers/filesystems/ntfs/mft.c
index 24f28e0936..f03074cdfd 100644
--- a/drivers/filesystems/ntfs/mft.c
+++ b/drivers/filesystems/ntfs/mft.c
@@ -2823,13 +2823,10 @@ BrowseSubNodeIndexEntries(PNTFS_VCB Vcb,
     // Is the bit for this node clear in the bitmap?
     if (!RtlCheckBit(Bitmap, NodeNumber))
     {
-        DPRINT1("File system corruption detected, node with VCN %I64u is being 
reused or is marked as deleted.\n", VCN);
+        DPRINT1("File system corruption detected, node with VCN %I64u is 
marked as deleted.\n", VCN);
         return STATUS_DATA_ERROR;
     }
 
-    // Clear the bit for this node so it can't be recursively referenced
-    RtlClearBits(Bitmap, NodeNumber, 1);
-
     // Allocate memory for the index record
     IndexRecord = ExAllocatePoolWithTag(NonPagedPool, IndexBlockSize, 
TAG_NTFS);
     if (!IndexRecord)

Reply via email to