in src/ServiceMonitor/IISConfigUtil.cpp [90:132]
HRESULT IISConfigUtil::Initialize()
{
HRESULT hr = S_OK;
TCHAR* pBuffer = NULL;
DWORD dwBufSize = 0;
//
// resolve system drive
//
dwBufSize = GetSystemDirectory(NULL, 0);
if (dwBufSize == 0)
{
//
// failed to get System Directory info
//
hr = HRESULT_FROM_WIN32(GetLastError());
goto Finished;
}
pBuffer = (TCHAR*)malloc(dwBufSize * sizeof(TCHAR));
if (pBuffer == NULL)
{
hr = HRESULT_FROM_WIN32(ERROR_NOT_ENOUGH_MEMORY);
goto Finished;
}
if (GetSystemDirectory(pBuffer, dwBufSize) == 0)
{
hr = HRESULT_FROM_WIN32(GetLastError());
goto Finished;
}
m_pstrSysDirPath = pBuffer;
pBuffer = NULL;
Finished:
if (pBuffer != NULL)
{
free(pBuffer);
pBuffer = NULL;
}
return hr;
}