Dan Hipschman : wininet: InternetReadFileExA should check INTERNET_FLAG_ASYNC.

Alexandre Julliard julliard at winehq.org
Fri Mar 28 10:02:45 CDT 2008


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

Author: Dan Hipschman <dsh at linux.ucla.edu>
Date:   Thu Mar 27 13:52:24 2008 -0700

wininet: InternetReadFileExA should check INTERNET_FLAG_ASYNC.

---

 dlls/wininet/http.c       |    4 +---
 dlls/wininet/tests/http.c |    2 ++
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/dlls/wininet/http.c b/dlls/wininet/http.c
index fc458d4..3980e9a 100644
--- a/dlls/wininet/http.c
+++ b/dlls/wininet/http.c
@@ -1733,9 +1733,7 @@ static DWORD HTTPREQ_ReadFileExA(WININETHANDLEHEADER *hdr, INTERNET_BUFFERSA *bu
 
     INTERNET_SendCallback(&req->hdr, req->hdr.dwContext, INTERNET_STATUS_RECEIVING_RESPONSE, NULL, 0);
 
-    /* FIXME: IRF_ASYNC may not be the right thing to test here;
-     * hIC->hdr.dwFlags & INTERNET_FLAG_ASYNC is probably better */
-    if (flags & IRF_ASYNC) {
+    if (hdr->dwFlags & INTERNET_FLAG_ASYNC) {
         DWORD available = 0;
 
         NETCON_query_data_available(&req->netConnection, &available);
diff --git a/dlls/wininet/tests/http.c b/dlls/wininet/tests/http.c
index fb561c4..5d42077 100644
--- a/dlls/wininet/tests/http.c
+++ b/dlls/wininet/tests/http.c
@@ -659,6 +659,8 @@ static void InternetReadFileExA_test(int flags)
             if (GetLastError() == ERROR_IO_PENDING)
             {
                 trace("InternetReadFileEx -> PENDING\n");
+                ok(flags & INTERNET_FLAG_ASYNC,
+                   "Should not get ERROR_IO_PENDING without INTERNET_FLAG_ASYNC\n");
                 CHECK_NOTIFIED(INTERNET_STATUS_RECEIVING_RESPONSE);
                 WaitForSingleObject(hCompleteEvent, INFINITE);
                 CHECK_NOTIFIED(INTERNET_STATUS_REQUEST_COMPLETE);




More information about the wine-cvs mailing list