On 2017-11-29 19:52, Andrew Eikum wrote:
diff --git a/dlls/ntdll/file.c b/dlls/ntdll/file.c index bdfc383d7e..f7db24cc8b 100644 --- a/dlls/ntdll/file.c +++ b/dlls/ntdll/file.c @@ -1071,10 +1071,7 @@ NTSTATUS WINAPI NtReadFileScatter( HANDLE file, HANDLE event, PIO_APC_ROUTINE ap break; } if (!result)
{
status = STATUS_END_OF_FILE; break;
} total += result; length -= result; if ((pos += result) == page_size)
I think your conclusion from the test may be overly broad. The regular NtReadFile only returns STATUS_END_OF_FILE if the file pointer was already at EOF, i.e. if no data was read. It seems likely the Scatter version would do the same, so another test that starts reading at or beyond EOF should still return STATUS_END_OF_FILE.
Best, Thomas