Make handlerSettings optional (#989)
This commit is contained in:
parent
a266d3fa27
commit
f5f0988baf
|
|
@ -56,7 +56,10 @@ ASPNETCORE_SHIM_CONFIG::Populate(
|
|||
CS_ASPNETCORE_PROCESS_ARGUMENTS,
|
||||
&m_struArguments));
|
||||
|
||||
RETURN_IF_FAILED(ConfigUtility::FindHandlerVersion(pAspNetCoreElement, &m_struHandlerVersion));
|
||||
if (m_hostingModel == HOSTING_OUT_PROCESS)
|
||||
{
|
||||
RETURN_IF_FAILED(ConfigUtility::FindHandlerVersion(pAspNetCoreElement, &m_struHandlerVersion));
|
||||
}
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,7 +28,12 @@ public:
|
|||
STRU strHandlerName;
|
||||
STRU strHandlerValue;
|
||||
|
||||
RETURN_IF_FAILED(GetElementChildByName(pElement, CS_ASPNETCORE_HANDLER_SETTINGS,&pHandlerSettings));
|
||||
// backwards complatibility with systems not having schema for handlerSettings
|
||||
if (FAILED_LOG(GetElementChildByName(pElement, CS_ASPNETCORE_HANDLER_SETTINGS, &pHandlerSettings)))
|
||||
{
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
RETURN_IF_FAILED(pHandlerSettings->get_Collection(&pHandlerSettingsCollection));
|
||||
|
||||
RETURN_IF_FAILED(hr = FindFirstElement(pHandlerSettingsCollection, &index, &pHandlerVar));
|
||||
|
|
|
|||
|
|
@ -67,19 +67,18 @@ DebugInitialize()
|
|||
|
||||
try
|
||||
{
|
||||
const auto debugOutputFile = Environment::ExpandEnvironmentVariables(L"%ASPNETCORE_MODULE_DEBUG_FILE%");
|
||||
auto debugOutputFile = Environment::ExpandEnvironmentVariables(L"%ASPNETCORE_MODULE_DEBUG_FILE%");
|
||||
|
||||
if (!debugOutputFile.empty())
|
||||
{
|
||||
g_logFile = CreateFileW(debugOutputFile.c_str(),
|
||||
FILE_GENERIC_WRITE,
|
||||
FILE_SHARE_READ | FILE_SHARE_WRITE,
|
||||
(GENERIC_READ | GENERIC_WRITE),
|
||||
(FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE),
|
||||
nullptr,
|
||||
OPEN_ALWAYS,
|
||||
FILE_ATTRIBUTE_NORMAL,
|
||||
nullptr
|
||||
);
|
||||
|
||||
if (g_logFile != INVALID_HANDLE_VALUE)
|
||||
{
|
||||
InitializeSRWLock(&g_logFileLock);
|
||||
|
|
@ -145,6 +144,7 @@ DebugPrint(
|
|||
|
||||
SetFilePointer(g_logFile, 0, nullptr, FILE_END);
|
||||
WriteFile(g_logFile, strOutput.QueryStr(), strOutput.QueryCB(), &nBytesWritten, nullptr);
|
||||
FlushFileBuffers(g_logFile);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -572,13 +572,7 @@ UTILITY::LogEvent(
|
|||
);
|
||||
}
|
||||
|
||||
STACK_STRA(converted, 256);
|
||||
if (converted.CopyW(pstrMsg))
|
||||
{
|
||||
DebugPrintf(
|
||||
dwEventInfoType == EVENTLOG_ERROR_TYPE ? ASPNETCORE_DEBUG_FLAG_ERROR : ASPNETCORE_DEBUG_FLAG_INFO,
|
||||
"Event Log: %s", converted.QueryStr());
|
||||
}
|
||||
WDebugPrintf(dwEventInfoType == EVENTLOG_ERROR_TYPE ? ASPNETCORE_DEBUG_FLAG_ERROR : ASPNETCORE_DEBUG_FLAG_INFO, L"Event Log: %s", pstrMsg);
|
||||
}
|
||||
|
||||
VOID
|
||||
|
|
|
|||
|
|
@ -89,4 +89,18 @@ namespace ConfigUtilityTests
|
|||
EXPECT_EQ(hr, S_OK);
|
||||
EXPECT_STREQ(handlerVersion.QueryStr(), L"value2");
|
||||
}
|
||||
|
||||
TEST(ConfigUtilityTestSingle, IgnoresFailedGetElement)
|
||||
{
|
||||
STRU handlerVersion;
|
||||
|
||||
auto element = std::make_unique<NiceMock<MockElement>>();
|
||||
ON_CALL(*element, GetElementByName(_, _))
|
||||
.WillByDefault(DoAll(testing::SetArgPointee<1>(nullptr), testing::Return(HRESULT_FROM_WIN32( ERROR_INVALID_INDEX ))));
|
||||
|
||||
HRESULT hr = ConfigUtility::FindHandlerVersion(element.get(), &handlerVersion);
|
||||
|
||||
EXPECT_EQ(hr, S_OK);
|
||||
EXPECT_STREQ(handlerVersion.QueryStr(), L"");
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue