Module: wine Branch: master Commit: e2e98ae36fb6d48583e3977b02d27c4bd1a46882 URL: http://source.winehq.org/git/wine.git/?a=commit;h=e2e98ae36fb6d48583e3977b02...
Author: Mike Kaplinskiy mike.kaplinskiy@gmail.com Date: Sun May 22 03:22:45 2011 -0400
iphlpapi: Set the overlapped status to pending as well as returning ERROR_IO_PENDING.
---
dlls/iphlpapi/iphlpapi_main.c | 2 ++ dlls/iphlpapi/tests/iphlpapi.c | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/dlls/iphlpapi/iphlpapi_main.c b/dlls/iphlpapi/iphlpapi_main.c index 87aa4ac..70b4876 100644 --- a/dlls/iphlpapi/iphlpapi_main.c +++ b/dlls/iphlpapi/iphlpapi_main.c @@ -49,6 +49,7 @@ #include "winreg.h" #define USE_WS_PREFIX #include "winsock2.h" +#include "winternl.h" #include "ws2ipdef.h" #include "iphlpapi.h" #include "ifenum.h" @@ -2033,6 +2034,7 @@ DWORD WINAPI NotifyAddrChange(PHANDLE Handle, LPOVERLAPPED overlapped) { FIXME("(Handle %p, overlapped %p): stub\n", Handle, overlapped); if (Handle) *Handle = INVALID_HANDLE_VALUE; + if (overlapped) ((IO_STATUS_BLOCK *) overlapped)->u.Status = STATUS_PENDING; return ERROR_IO_PENDING; }
diff --git a/dlls/iphlpapi/tests/iphlpapi.c b/dlls/iphlpapi/tests/iphlpapi.c index 6f41adf..cd1ef23 100644 --- a/dlls/iphlpapi/tests/iphlpapi.c +++ b/dlls/iphlpapi/tests/iphlpapi.c @@ -849,9 +849,9 @@ static void testNotifyAddrChange(void) ok(ret == ERROR_IO_PENDING, "NotifyAddrChange returned %d, expected ERROR_IO_PENDING\n", ret); todo_wine ok(handle != INVALID_HANDLE_VALUE, "NotifyAddrChange returned invalid file handle\n"); success = GetOverlappedResult(handle, &overlapped, &bytes, FALSE); - todo_wine ok(success == FALSE, "GetOverlappedResult returned TRUE, expected FALSE\n"); + ok(success == FALSE, "GetOverlappedResult returned TRUE, expected FALSE\n"); ret = GetLastError(); - todo_wine ok(ret == ERROR_IO_INCOMPLETE, "GetLastError returned %d, expected ERROR_IO_INCOMPLETE\n", ret); + ok(ret == ERROR_IO_INCOMPLETE, "GetLastError returned %d, expected ERROR_IO_INCOMPLETE\n", ret); success = gCancelIPChangeNotify(&overlapped); todo_wine ok(success == TRUE, "CancelIPChangeNotify returned FALSE, expected TRUE\n");