Ken Thomases : ntdll: Don't poll() on a normal file; it should never block.

Alexandre Julliard julliard at winehq.org
Thu Nov 13 08:51:25 CST 2008


Module: wine
Branch: master
Commit: 974b8d802c00b9e3a6dc3051246099e37603ec03
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=974b8d802c00b9e3a6dc3051246099e37603ec03

Author: Ken Thomases <ken at codeweavers.com>
Date:   Wed Nov 12 12:15:31 2008 -0600

ntdll: Don't poll() on a normal file; it should never block.

---

 dlls/ntdll/file.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/dlls/ntdll/file.c b/dlls/ntdll/file.c
index d04125f..7afc380 100644
--- a/dlls/ntdll/file.c
+++ b/dlls/ntdll/file.c
@@ -612,6 +612,7 @@ NTSTATUS WINAPI NtReadFile(HANDLE hFile, HANDLE hEvent,
                     goto done;
                 }
             }
+            else if (type == FD_TYPE_FILE) continue;  /* no async I/O on regular files */
         }
         else
         {
@@ -940,6 +941,7 @@ NTSTATUS WINAPI NtWriteFile(HANDLE hFile, HANDLE hEvent,
                 status = STATUS_SUCCESS;
                 goto done;
             }
+            if (type == FD_TYPE_FILE) continue;  /* no async I/O on regular files */
         }
         else
         {




More information about the wine-cvs mailing list