mirror of
https://github.com/reactos/reactos.git
synced 2024-12-28 01:55:19 +00:00
[KS] KsQueryInformationFile(): Fallback to IRP if FastIO failed
Or, if it succeeded, return the actual NTSTATUS, not an unrelated BOOLEAN.
Addendum to commit 4725a4fd9c
(r42117).
CORE-16618
This commit is contained in:
parent
7405dc36b6
commit
b326312d52
1 changed files with 18 additions and 4 deletions
|
@ -367,17 +367,31 @@ KsQueryInformationFile(
|
||||||
if (FileInformationClass == FileBasicInformation)
|
if (FileInformationClass == FileBasicInformation)
|
||||||
{
|
{
|
||||||
/* use FastIoQueryBasicInfo routine */
|
/* use FastIoQueryBasicInfo routine */
|
||||||
if (FastIoDispatch->FastIoQueryBasicInfo)
|
if (FastIoDispatch->FastIoQueryBasicInfo != NULL &&
|
||||||
|
FastIoDispatch->FastIoQueryBasicInfo(
|
||||||
|
FileObject,
|
||||||
|
TRUE,
|
||||||
|
(PFILE_BASIC_INFORMATION)FileInformation,
|
||||||
|
&IoStatusBlock,
|
||||||
|
DeviceObject))
|
||||||
{
|
{
|
||||||
return FastIoDispatch->FastIoQueryBasicInfo(FileObject, TRUE, (PFILE_BASIC_INFORMATION)FileInformation, &IoStatusBlock, DeviceObject);
|
/* request was handled */
|
||||||
|
return IoStatusBlock.Status;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (FileInformationClass == FileStandardInformation)
|
else if (FileInformationClass == FileStandardInformation)
|
||||||
{
|
{
|
||||||
/* use FastIoQueryStandardInfo routine */
|
/* use FastIoQueryStandardInfo routine */
|
||||||
if (FastIoDispatch->FastIoQueryStandardInfo)
|
if (FastIoDispatch->FastIoQueryStandardInfo != NULL &&
|
||||||
|
FastIoDispatch->FastIoQueryStandardInfo(
|
||||||
|
FileObject,
|
||||||
|
TRUE,
|
||||||
|
(PFILE_STANDARD_INFORMATION)FileInformation,
|
||||||
|
&IoStatusBlock,
|
||||||
|
DeviceObject))
|
||||||
{
|
{
|
||||||
return FastIoDispatch->FastIoQueryStandardInfo(FileObject, TRUE, (PFILE_STANDARD_INFORMATION)FileInformation, &IoStatusBlock, DeviceObject);
|
/* request was handled */
|
||||||
|
return IoStatusBlock.Status;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue