Rebase against 9586d3b2567e6b4a2270caeacf39796c168351c0.

This commit is contained in:
Sebastian Lackner
2015-05-21 18:47:14 +02:00
parent b2297b41c3
commit ca8ffcd619
20 changed files with 127 additions and 609 deletions

View File

@@ -1,4 +1,4 @@
From 1b7cdebf9ee746d71dee0f69d5fa4da63a3ef5f0 Mon Sep 17 00:00:00 2001
From 8ad4ff3e0ed7e3065a1f408873a69d51cb6b3b51 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Fri, 15 Aug 2014 22:23:08 +0200
Subject: ntdll: Unify similar code in NtReadFile and FILE_AsyncReadService.
@@ -15,14 +15,14 @@ Changes in FILE_AsyncReadService:
whereas NtReadFile uses different behaviour based on the fd type.
Now both implementations match, and behave the same way.
---
dlls/ntdll/file.c | 106 +++++++++++++++++++++++-------------------------------
1 file changed, 45 insertions(+), 61 deletions(-)
dlls/ntdll/file.c | 108 +++++++++++++++++++++++-------------------------------
1 file changed, 46 insertions(+), 62 deletions(-)
diff --git a/dlls/ntdll/file.c b/dlls/ntdll/file.c
index 7995738..bc3c894 100644
index 79daec5..fd88777 100644
--- a/dlls/ntdll/file.c
+++ b/dlls/ntdll/file.c
@@ -437,6 +437,44 @@ NTSTATUS FILE_GetNtStatus(void)
@@ -471,6 +471,45 @@ NTSTATUS FILE_GetNtStatus(void)
}
}
@@ -45,6 +45,7 @@ index 7995738..bc3c894 100644
+ {
+ case FD_TYPE_FILE:
+ case FD_TYPE_CHAR:
+ case FD_TYPE_DEVICE:
+ return length ? STATUS_END_OF_FILE : STATUS_SUCCESS;
+ case FD_TYPE_SERIAL:
+ return STATUS_PENDING;
@@ -67,7 +68,7 @@ index 7995738..bc3c894 100644
/***********************************************************************
* FILE_AsyncReadService (INTERNAL)
*/
@@ -444,44 +482,19 @@ static NTSTATUS FILE_AsyncReadService( void *user, IO_STATUS_BLOCK *iosb,
@@ -478,44 +517,19 @@ static NTSTATUS FILE_AsyncReadService( void *user, IO_STATUS_BLOCK *iosb,
NTSTATUS status, void **apc, void **arg )
{
struct async_fileio_read *fileio = user;
@@ -117,7 +118,7 @@ index 7995738..bc3c894 100644
break;
case STATUS_TIMEOUT:
@@ -632,7 +645,6 @@ static NTSTATUS get_io_avail_mode( HANDLE handle, enum server_fd_type type, BOOL
@@ -762,7 +776,6 @@ static NTSTATUS get_io_avail_mode( HANDLE handle, enum server_fd_type type, BOOL
return status;
}
@@ -125,7 +126,7 @@ index 7995738..bc3c894 100644
/******************************************************************************
* NtReadFile [NTDLL.@]
* ZwReadFile [NTDLL.@]
@@ -725,37 +737,9 @@ NTSTATUS WINAPI NtReadFile(HANDLE hFile, HANDLE hEvent,
@@ -858,38 +871,9 @@ NTSTATUS WINAPI NtReadFile(HANDLE hFile, HANDLE hEvent,
for (;;)
{
@@ -143,6 +144,7 @@ index 7995738..bc3c894 100644
- {
- case FD_TYPE_FILE:
- case FD_TYPE_CHAR:
- case FD_TYPE_DEVICE:
- status = length ? STATUS_END_OF_FILE : STATUS_SUCCESS;
- goto done;
- case FD_TYPE_SERIAL:
@@ -166,5 +168,5 @@ index 7995738..bc3c894 100644
if (async_read)
{
--
2.3.0
2.4.0