mirror of
https://github.com/reactos/reactos.git
synced 2025-04-26 16:40:27 +00:00
[KERNEL32]
In case of synchronous read, it's legit for the FSD to notify EOF by returning success & zero read length. It fixes never ending reads when copying a file from NFS to local disk. CORE-8204 CORE-11327 CORE-13484 svn path=/trunk/; revision=75443
This commit is contained in:
parent
a128acd13b
commit
0498ff85e3
1 changed files with 7 additions and 0 deletions
|
@ -101,6 +101,13 @@ CopyLoop (
|
|||
RegionSize,
|
||||
NULL,
|
||||
NULL);
|
||||
/* With sync read, 0 length + status success mean EOF:
|
||||
* https://msdn.microsoft.com/en-us/library/windows/desktop/aa365467(v=vs.85).aspx
|
||||
*/
|
||||
if (NT_SUCCESS(errCode) && IoStatusBlock.Information == 0)
|
||||
{
|
||||
errCode = STATUS_END_OF_FILE;
|
||||
}
|
||||
if (NT_SUCCESS(errCode) && (NULL == pbCancel || ! *pbCancel))
|
||||
{
|
||||
errCode = NtWriteFile(FileHandleDest,
|
||||
|
|
Loading…
Reference in a new issue