Bruno Jesus : iphlpapi: Update the buffer size only if required in GetAdaptersAddresses.
Alexandre Julliard
julliard at wine.codeweavers.com
Thu Apr 16 07:56:27 CDT 2015
Module: wine
Branch: master
Commit: 708ab4ca12079a8d35e8e537119e6b33240f3292
URL: http://source.winehq.org/git/wine.git/?a=commit;h=708ab4ca12079a8d35e8e537119e6b33240f3292
Author: Bruno Jesus <00cpxxx at gmail.com>
Date: Thu Apr 16 01:23:50 2015 -0300
iphlpapi: Update the buffer size only if required in GetAdaptersAddresses.
---
dlls/iphlpapi/iphlpapi_main.c | 4 +++-
dlls/iphlpapi/tests/iphlpapi.c | 1 -
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/dlls/iphlpapi/iphlpapi_main.c b/dlls/iphlpapi/iphlpapi_main.c
index d2f36fe..513cbce 100644
--- a/dlls/iphlpapi/iphlpapi_main.c
+++ b/dlls/iphlpapi/iphlpapi_main.c
@@ -1382,8 +1382,10 @@ ULONG WINAPI DECLSPEC_HOTPATCH GetAdaptersAddresses(ULONG family, ULONG flags, P
ret = ERROR_SUCCESS;
}
else
+ {
ret = ERROR_BUFFER_OVERFLOW;
- *buflen = total_size;
+ *buflen = total_size;
+ }
TRACE("num adapters %u\n", table->numIndexes);
HeapFree(GetProcessHeap(), 0, table);
diff --git a/dlls/iphlpapi/tests/iphlpapi.c b/dlls/iphlpapi/tests/iphlpapi.c
index 5160063..377aadf 100644
--- a/dlls/iphlpapi/tests/iphlpapi.c
+++ b/dlls/iphlpapi/tests/iphlpapi.c
@@ -1338,7 +1338,6 @@ static void test_GetAdaptersAddresses(void)
ptr = HeapAlloc(GetProcessHeap(), 0, osize);
ret = pGetAdaptersAddresses(AF_UNSPEC, 0, NULL, ptr, &osize);
ok(!ret, "expected ERROR_SUCCESS got %u\n", ret);
-todo_wine
ok(osize == size, "expected %d, got %d\n", size, osize);
for (aa = ptr; !ret && aa; aa = aa->Next)
More information about the wine-cvs
mailing list