mirror of
https://github.com/reactos/reactos.git
synced 2025-08-05 14:53:40 +00:00
[KS] KsQueryInformationFile(): Merge IoStatus and StatusBlock
Addendum to commit 9061b8ee40
(r42334).
This commit is contained in:
parent
774a4252b9
commit
7405dc36b6
1 changed files with 6 additions and 8 deletions
|
@ -349,10 +349,9 @@ KsQueryInformationFile(
|
||||||
PFAST_IO_DISPATCH FastIoDispatch;
|
PFAST_IO_DISPATCH FastIoDispatch;
|
||||||
PIRP Irp;
|
PIRP Irp;
|
||||||
PIO_STACK_LOCATION IoStack;
|
PIO_STACK_LOCATION IoStack;
|
||||||
IO_STATUS_BLOCK IoStatus;
|
IO_STATUS_BLOCK IoStatusBlock;
|
||||||
KEVENT Event;
|
KEVENT Event;
|
||||||
LARGE_INTEGER Offset;
|
LARGE_INTEGER Offset;
|
||||||
IO_STATUS_BLOCK StatusBlock;
|
|
||||||
NTSTATUS Status;
|
NTSTATUS Status;
|
||||||
|
|
||||||
/* get related file object */
|
/* get related file object */
|
||||||
|
@ -370,7 +369,7 @@ KsQueryInformationFile(
|
||||||
/* use FastIoQueryBasicInfo routine */
|
/* use FastIoQueryBasicInfo routine */
|
||||||
if (FastIoDispatch->FastIoQueryBasicInfo)
|
if (FastIoDispatch->FastIoQueryBasicInfo)
|
||||||
{
|
{
|
||||||
return FastIoDispatch->FastIoQueryBasicInfo(FileObject, TRUE, (PFILE_BASIC_INFORMATION)FileInformation, &IoStatus, DeviceObject);
|
return FastIoDispatch->FastIoQueryBasicInfo(FileObject, TRUE, (PFILE_BASIC_INFORMATION)FileInformation, &IoStatusBlock, DeviceObject);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (FileInformationClass == FileStandardInformation)
|
else if (FileInformationClass == FileStandardInformation)
|
||||||
|
@ -378,10 +377,11 @@ KsQueryInformationFile(
|
||||||
/* use FastIoQueryStandardInfo routine */
|
/* use FastIoQueryStandardInfo routine */
|
||||||
if (FastIoDispatch->FastIoQueryStandardInfo)
|
if (FastIoDispatch->FastIoQueryStandardInfo)
|
||||||
{
|
{
|
||||||
return FastIoDispatch->FastIoQueryStandardInfo(FileObject, TRUE, (PFILE_STANDARD_INFORMATION)FileInformation, &IoStatus, DeviceObject);
|
return FastIoDispatch->FastIoQueryStandardInfo(FileObject, TRUE, (PFILE_STANDARD_INFORMATION)FileInformation, &IoStatusBlock, DeviceObject);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* clear event */
|
/* clear event */
|
||||||
KeClearEvent(&FileObject->Event);
|
KeClearEvent(&FileObject->Event);
|
||||||
|
|
||||||
|
@ -392,8 +392,7 @@ KsQueryInformationFile(
|
||||||
Offset.QuadPart = 0L;
|
Offset.QuadPart = 0L;
|
||||||
|
|
||||||
/* build the request */
|
/* build the request */
|
||||||
Irp = IoBuildSynchronousFsdRequest(IRP_MJ_QUERY_INFORMATION, IoGetRelatedDeviceObject(FileObject), NULL, 0, &Offset, &Event, &StatusBlock);
|
Irp = IoBuildSynchronousFsdRequest(IRP_MJ_QUERY_INFORMATION, IoGetRelatedDeviceObject(FileObject), NULL, 0, &Offset, &Event, &IoStatusBlock);
|
||||||
|
|
||||||
if (!Irp)
|
if (!Irp)
|
||||||
return STATUS_INSUFFICIENT_RESOURCES;
|
return STATUS_INSUFFICIENT_RESOURCES;
|
||||||
|
|
||||||
|
@ -418,7 +417,7 @@ KsQueryInformationFile(
|
||||||
if (FileObject->Flags & FO_SYNCHRONOUS_IO)
|
if (FileObject->Flags & FO_SYNCHRONOUS_IO)
|
||||||
Status = FileObject->FinalStatus;
|
Status = FileObject->FinalStatus;
|
||||||
else
|
else
|
||||||
Status = StatusBlock.Status;
|
Status = IoStatusBlock.Status;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* done */
|
/* done */
|
||||||
|
@ -482,7 +481,6 @@ KsSetInformationFile(
|
||||||
|
|
||||||
/* build the irp */
|
/* build the irp */
|
||||||
Irp = IoBuildSynchronousFsdRequest(IRP_MJ_SET_INFORMATION, DeviceObject, NULL, 0, &Offset, &Event, &IoStatus);
|
Irp = IoBuildSynchronousFsdRequest(IRP_MJ_SET_INFORMATION, DeviceObject, NULL, 0, &Offset, &Event, &IoStatus);
|
||||||
|
|
||||||
if (!Irp)
|
if (!Irp)
|
||||||
{
|
{
|
||||||
/* failed to allocate irp */
|
/* failed to allocate irp */
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue