Module: wine Branch: master Commit: c2c0fefb99ade454c2c8c5ad4e8e9dbf542b2050 URL: https://gitlab.winehq.org/wine/wine/-/commit/c2c0fefb99ade454c2c8c5ad4e8e9db...
Author: Hans Leidekker hans@codeweavers.com Date: Wed Sep 13 13:59:47 2023 +0200
iphlpapi/tests: Call GetAdaptersAddresses() in a loop.
As shown by the testbot, doubling is not always sufficient.
---
dlls/iphlpapi/tests/iphlpapi.c | 7 +++++++ 1 file changed, 7 insertions(+)
diff --git a/dlls/iphlpapi/tests/iphlpapi.c b/dlls/iphlpapi/tests/iphlpapi.c index 090cd2c9ff9..bd566980500 100644 --- a/dlls/iphlpapi/tests/iphlpapi.c +++ b/dlls/iphlpapi/tests/iphlpapi.c @@ -1769,6 +1769,13 @@ static void test_GetAdaptersAddresses(void) osize = size; ptr = malloc(osize); ret = GetAdaptersAddresses(AF_UNSPEC, GAA_FLAG_INCLUDE_PREFIX | GAA_FLAG_SKIP_FRIENDLY_NAME, NULL, ptr, &osize); + while (ret == ERROR_BUFFER_OVERFLOW) + { + size = osize * 2; + osize = size; + ptr = realloc(ptr, osize); + ret = GetAdaptersAddresses(AF_UNSPEC, GAA_FLAG_INCLUDE_PREFIX | GAA_FLAG_SKIP_FRIENDLY_NAME, NULL, ptr, &osize); + } ok(!ret, "expected ERROR_SUCCESS got %lu\n", ret); ok(osize == size, "expected %ld, got %ld\n", size, osize);