mirror of
https://github.com/winfsp/winfsp.git
synced 2025-04-23 08:53:01 -05:00
sys: IRP_MJ_DIRECTORY_CONTROL: testing
This commit is contained in:
parent
f3a2d5f2c0
commit
c53c9bb9cc
@ -137,11 +137,10 @@ static NTSTATUS FspFsvolQueryDirectoryCopy(
|
|||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
for (;;)
|
for (;
|
||||||
|
(PUINT8)DirInfo + sizeof(DirInfo->Size) <= DirInfoEnd;
|
||||||
|
DirInfo = (PVOID)((PUINT8)DirInfo + FSP_FSCTL_DEFAULT_ALIGN_UP(DirInfoSize)))
|
||||||
{
|
{
|
||||||
if ((PUINT8)DirInfo + sizeof(DirInfo->Size) > DirInfoEnd)
|
|
||||||
break;
|
|
||||||
|
|
||||||
DirInfoSize = DirInfo->Size;
|
DirInfoSize = DirInfo->Size;
|
||||||
|
|
||||||
if (sizeof(FSP_FSCTL_DIR_INFO) > DirInfoSize)
|
if (sizeof(FSP_FSCTL_DIR_INFO) > DirInfoSize)
|
||||||
@ -154,7 +153,7 @@ static NTSTATUS FspFsvolQueryDirectoryCopy(
|
|||||||
if (0 != DirectoryOffset && !DirectoryOffsetFound)
|
if (0 != DirectoryOffset && !DirectoryOffsetFound)
|
||||||
{
|
{
|
||||||
DirectoryOffsetFound = DirInfo->NextOffset == DirectoryOffset;
|
DirectoryOffsetFound = DirInfo->NextOffset == DirectoryOffset;
|
||||||
goto NextDirInfo;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
FileName.Length =
|
FileName.Length =
|
||||||
@ -217,7 +216,7 @@ static NTSTATUS FspFsvolQueryDirectoryCopy(
|
|||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
ASSERT(0);
|
ASSERT(0);
|
||||||
return STATUS_INVALID_INFO_CLASS;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ReturnSingleEntry)
|
if (ReturnSingleEntry)
|
||||||
@ -226,9 +225,8 @@ static NTSTATUS FspFsvolQueryDirectoryCopy(
|
|||||||
DestBuf = (PVOID)((PUINT8)DestBuf +
|
DestBuf = (PVOID)((PUINT8)DestBuf +
|
||||||
FSP_FSCTL_ALIGN_UP(BaseInfoLen + FileName.Length, sizeof(LONGLONG)));
|
FSP_FSCTL_ALIGN_UP(BaseInfoLen + FileName.Length, sizeof(LONGLONG)));
|
||||||
}
|
}
|
||||||
|
else
|
||||||
NextDirInfo:
|
*PDirectoryOffset = DirInfo->NextOffset;
|
||||||
DirInfo = (PVOID)((PUINT8)DirInfo + FSP_FSCTL_DEFAULT_ALIGN_UP(DirInfoSize));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
except (EXCEPTION_EXECUTE_HANDLER)
|
except (EXCEPTION_EXECUTE_HANDLER)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user