mirror of
https://github.com/reactos/reactos.git
synced 2024-10-02 07:26:47 +00:00
[MSCONFIG]
- fix possible leaks CID #716286 CID #716287 svn path=/trunk/; revision=62677
This commit is contained in:
parent
1f6df38614
commit
094caa6e2a
|
@ -109,17 +109,22 @@ GetServices ( void )
|
|||
/* reserve memory for service info array */
|
||||
pServiceStatus = HeapAlloc(GetProcessHeap(), 0, BytesNeeded);
|
||||
if (!pServiceStatus)
|
||||
{
|
||||
CloseServiceHandle(ScHandle);
|
||||
return;
|
||||
}
|
||||
|
||||
/* fill array with service info */
|
||||
if (EnumServicesStatusEx(ScHandle, SC_ENUM_PROCESS_INFO, SERVICE_WIN32, SERVICE_STATE_ALL, (LPBYTE)pServiceStatus, BytesNeeded, &BytesNeeded, &NumServices, &ResumeHandle, 0) == 0)
|
||||
{
|
||||
HeapFree(GetProcessHeap(), 0, pServiceStatus);
|
||||
CloseServiceHandle(ScHandle);
|
||||
return;
|
||||
}
|
||||
}
|
||||
else /* exit on failure */
|
||||
{
|
||||
CloseServiceHandle(ScHandle);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
@ -127,7 +132,11 @@ GetServices ( void )
|
|||
if (NumServices)
|
||||
{
|
||||
if (!pServiceStatus)
|
||||
{
|
||||
CloseServiceHandle(ScHandle);
|
||||
return;
|
||||
}
|
||||
|
||||
for (Index = 0; Index < NumServices; Index++)
|
||||
{
|
||||
memset(&item, 0, sizeof(LV_ITEM));
|
||||
|
|
|
@ -137,7 +137,7 @@ GetDisabledAutostartEntriesFromRegistry (TCHAR * szBasePath)
|
|||
HeapFree(GetProcessHeap(), 0, Data);
|
||||
}
|
||||
}
|
||||
RegCloseKey(hKey);
|
||||
RegCloseKey(hKey);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -199,8 +199,8 @@ GetAutostartEntriesFromRegistry ( HKEY hRootKey, TCHAR* KeyName )
|
|||
item.pszText = Path;
|
||||
item.iSubItem = 2;
|
||||
SendMessage(hStartupListCtrl, LVM_SETITEMTEXT, item.iItem, (LPARAM) &item);
|
||||
HeapFree(GetProcessHeap(), 0, Data);
|
||||
}
|
||||
HeapFree(GetProcessHeap(), 0, Data);
|
||||
}
|
||||
}
|
||||
RegCloseKey(hKey);
|
||||
|
|
Loading…
Reference in a new issue