From 9db17294da97286e67d159d161c455961b2019c1 Mon Sep 17 00:00:00 2001 From: Bill Zissimopoulos Date: Wed, 21 Aug 2024 11:29:37 +0100 Subject: [PATCH] sys: FspFsvolQueryDirectoryCopyCache: check DirInfoCacheHint against DirInfoSize --- src/sys/dirctl.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/sys/dirctl.c b/src/sys/dirctl.c index 6216580b..a53ebc1c 100644 --- a/src/sys/dirctl.c +++ b/src/sys/dirctl.c @@ -348,7 +348,9 @@ static NTSTATUS FspFsvolQueryDirectoryCopyCache( FSP_FILE_NODE *FileNode = FileDesc->FileNode; - if (ResetCache || FileDesc->DirInfo != FileNode->NonPaged->DirInfo) + if (ResetCache || + FileDesc->DirInfo != FileNode->NonPaged->DirInfo || + FileDesc->DirInfoCacheHint >= DirInfoSize) FileDesc->DirInfoCacheHint = 0; /* reset the DirInfo hint if anything looks fishy! */ FileDesc->DirInfo = FileNode->NonPaged->DirInfo;