Index: cmdLocalGroup.c =================================================================== --- cmdLocalGroup.c (revision 71099) +++ cmdLocalGroup.c (working copy) @@ -4,7 +4,7 @@ * FILE: base/applications/network/net/cmdLocalGroup.c * PURPOSE: * - * PROGRAMMERS: Eric Kohl + * PROGRAMMERS: Eric Kohl, Curtis Wilson */ #include "net.h" @@ -46,6 +46,8 @@ NetApiBufferFree(pServer); +do + { Status = NetLocalGroupEnum(NULL, 0, (LPBYTE*)&pBuffer, @@ -53,9 +55,8 @@ &dwRead, &dwTotal, &ResumeHandle); - if (Status != NERR_Success) - return Status; - + if ((Status != NERR_Success) && (Status != ERROR_MORE_DATA)) + return Status; qsort(pBuffer, dwRead, sizeof(PLOCALGROUP_INFO_0), @@ -67,12 +68,16 @@ PrintToConsole(L"*%s\n", pBuffer[i].lgrpi0_name); } - NetApiBufferFree(pBuffer); - + if (pBuffer != NULL) + { + NetApiBufferFree(pBuffer); + pBuffer = NULL; + } + } + while (Status == ERROR_MORE_DATA); return NERR_Success; } - static NET_API_STATUS DisplayLocalGroup(LPWSTR lpGroupName)