Commit 0502de41 authored by Juan Lang's avatar Juan Lang Committed by Alexandre Julliard

iphlpapi: Don't allocate gobs of memory if there are no non-loopback interfaces.

parent e1a83693
......@@ -234,12 +234,14 @@ InterfaceIndexTable *getNonLoopbackInterfaceIndexTable(void)
if (indexes) {
struct if_nameindex *p;
DWORD size = sizeof(InterfaceIndexTable);
for (p = indexes, numInterfaces = 0; p && p->if_name; p++)
if (!isLoopbackInterface(fd, p->if_name))
numInterfaces++;
ret = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY,
sizeof(InterfaceIndexTable) + (numInterfaces - 1) * sizeof(DWORD));
if (numInterfaces > 1)
size += (numInterfaces - 1) * sizeof(DWORD);
ret = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, size);
if (ret) {
for (p = indexes; p && p->if_name; p++)
if (!isLoopbackInterface(fd, p->if_name))
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment