diff --git a/src/AspNetCoreModuleV2/OutOfProcessRequestHandler/OutOfProcessRequestHandler.vcxproj b/src/AspNetCoreModuleV2/OutOfProcessRequestHandler/OutOfProcessRequestHandler.vcxproj
index 08cd979af8..3667f51481 100644
--- a/src/AspNetCoreModuleV2/OutOfProcessRequestHandler/OutOfProcessRequestHandler.vcxproj
+++ b/src/AspNetCoreModuleV2/OutOfProcessRequestHandler/OutOfProcessRequestHandler.vcxproj
@@ -109,7 +109,7 @@
Windows
true
- kernel32.lib;user32.lib;advapi32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;ahadmin.lib;rpcrt4.lib;winhttp.lib;pdh.lib;ws2_32.lib;wbemuuid.lib;iphlpapi.lib;%(AdditionalDependencies)
+ kernel32.lib;user32.lib;nothrownew.obj;advapi32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;ahadmin.lib;rpcrt4.lib;winhttp.lib;pdh.lib;ws2_32.lib;wbemuuid.lib;iphlpapi.lib;%(AdditionalDependencies)
Source.def
@@ -141,7 +141,7 @@
Windows
true
- kernel32.lib;user32.lib;advapi32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;ahadmin.lib;rpcrt4.lib;winhttp.lib;pdh.lib;ws2_32.lib;wbemuuid.lib;iphlpapi.lib;%(AdditionalDependencies)
+ kernel32.lib;user32.lib;nothrownew.obj;advapi32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;ahadmin.lib;rpcrt4.lib;winhttp.lib;pdh.lib;ws2_32.lib;wbemuuid.lib;iphlpapi.lib;%(AdditionalDependencies)
Source.def
@@ -176,7 +176,7 @@
true
true
Source.def
- kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;ahadmin.lib;winhttp.lib;odbc32.lib;ws2_32.lib;odbccp32.lib;wbemuuid.lib;iphlpapi.lib;pdh.lib;rpcrt4.lib;%(AdditionalDependencies)
+ kernel32.lib;user32.lib;nothrownew.obj;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;ahadmin.lib;winhttp.lib;odbc32.lib;ws2_32.lib;odbccp32.lib;wbemuuid.lib;iphlpapi.lib;pdh.lib;rpcrt4.lib;%(AdditionalDependencies)
@@ -210,7 +210,7 @@
true
true
Source.def
- kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;ahadmin.lib;rpcrt4.lib;winhttp.lib;pdh.lib;ws2_32.lib;wbemuuid.lib;iphlpapi.lib;%(AdditionalDependencies)
+ kernel32.lib;user32.lib;nothrownew.obj;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;ahadmin.lib;rpcrt4.lib;winhttp.lib;pdh.lib;ws2_32.lib;wbemuuid.lib;iphlpapi.lib;%(AdditionalDependencies)
diff --git a/src/AspNetCoreModuleV2/OutOfProcessRequestHandler/outofprocess/forwardinghandler.cpp b/src/AspNetCoreModuleV2/OutOfProcessRequestHandler/outofprocess/forwardinghandler.cpp
index 1b3df88da0..149b06edef 100644
--- a/src/AspNetCoreModuleV2/OutOfProcessRequestHandler/outofprocess/forwardinghandler.cpp
+++ b/src/AspNetCoreModuleV2/OutOfProcessRequestHandler/outofprocess/forwardinghandler.cpp
@@ -208,6 +208,11 @@ FORWARDING_HANDLER::OnExecuteRequestHandler()
if (m_pDisconnect == NULL)
{
m_pDisconnect = new ASYNC_DISCONNECT_CONTEXT();
+ if (m_pDisconnect == NULL)
+ {
+ hr = E_OUTOFMEMORY;
+ goto Failure;
+ }
hr = pClientConnection->GetModuleContextContainer()->
SetConnectionModuleContext(m_pDisconnect,
@@ -454,6 +459,11 @@ REQUEST_NOTIFICATION_STATUS
// This should be the write completion of the 101 response.
//
m_pWebSocket = new WEBSOCKET_HANDLER();
+ if (m_pWebSocket == NULL)
+ {
+ hr = E_OUTOFMEMORY;
+ goto Failure;
+ }
hr = m_pWebSocket->ProcessRequest(this, m_pW3Context, m_hRequest, &fWebSocketUpgraded);
if (fWebSocketUpgraded)
@@ -708,6 +718,11 @@ HRESULT
HRESULT hr = S_OK;
sm_pAlloc = new ALLOC_CACHE_HANDLER;
+ if (sm_pAlloc == NULL)
+ {
+ hr = E_OUTOFMEMORY;
+ goto Finished;
+ }
hr = sm_pAlloc->Initialize(sizeof(FORWARDING_HANDLER),
64); // nThreshold
@@ -717,6 +732,11 @@ HRESULT
}
sm_pResponseHeaderHash = new RESPONSE_HEADER_HASH;
+ if (sm_pResponseHeaderHash == NULL)
+ {
+ hr = E_OUTOFMEMORY;
+ goto Finished;
+ }
hr = sm_pResponseHeaderHash->Initialize();
if (FAILED(hr))
diff --git a/src/AspNetCoreModuleV2/OutOfProcessRequestHandler/outofprocess/outprocessapplication.cpp b/src/AspNetCoreModuleV2/OutOfProcessRequestHandler/outofprocess/outprocessapplication.cpp
index 3e6bb30299..356029efd3 100644
--- a/src/AspNetCoreModuleV2/OutOfProcessRequestHandler/outofprocess/outprocessapplication.cpp
+++ b/src/AspNetCoreModuleV2/OutOfProcessRequestHandler/outofprocess/outprocessapplication.cpp
@@ -34,6 +34,11 @@ OUT_OF_PROCESS_APPLICATION::Initialize(
if (m_pProcessManager == NULL)
{
m_pProcessManager = new PROCESS_MANAGER;
+ if (m_pProcessManager == NULL)
+ {
+ hr = E_OUTOFMEMORY;
+ goto Finished;
+ }
hr = m_pProcessManager->Initialize();
if (FAILED(hr))
diff --git a/src/AspNetCoreModuleV2/OutOfProcessRequestHandler/outofprocess/processmanager.cxx b/src/AspNetCoreModuleV2/OutOfProcessRequestHandler/outofprocess/processmanager.cxx
index 7241362d31..7c75d65a0d 100644
--- a/src/AspNetCoreModuleV2/OutOfProcessRequestHandler/outofprocess/processmanager.cxx
+++ b/src/AspNetCoreModuleV2/OutOfProcessRequestHandler/outofprocess/processmanager.cxx
@@ -123,6 +123,11 @@ PROCESS_MANAGER::GetProcess(
{
m_dwProcessesPerApplication = pConfig->QueryProcessesPerApplication();
m_ppServerProcessList = new SERVER_PROCESS*[m_dwProcessesPerApplication];
+ if (m_ppServerProcessList == NULL)
+ {
+ hr = E_OUTOFMEMORY;
+ goto Finished;
+ }
for (DWORD i = 0; i < m_dwProcessesPerApplication; ++i)
{
@@ -198,6 +203,12 @@ PROCESS_MANAGER::GetProcess(
{
pSelectedServerProcess = new SERVER_PROCESS();
+ if (pSelectedServerProcess == NULL)
+ {
+ hr = E_OUTOFMEMORY;
+ goto Finished;
+ }
+
hr = pSelectedServerProcess->Initialize(
this, //ProcessManager
diff --git a/src/AspNetCoreModuleV2/OutOfProcessRequestHandler/outofprocess/serverprocess.cxx b/src/AspNetCoreModuleV2/OutOfProcessRequestHandler/outofprocess/serverprocess.cxx
index 4deea28d74..cedbd0ba12 100644
--- a/src/AspNetCoreModuleV2/OutOfProcessRequestHandler/outofprocess/serverprocess.cxx
+++ b/src/AspNetCoreModuleV2/OutOfProcessRequestHandler/outofprocess/serverprocess.cxx
@@ -187,6 +187,11 @@ SERVER_PROCESS::SetupListenPort(
}
pEntry = new ENVIRONMENT_VAR_ENTRY();
+ if (pEntry == NULL)
+ {
+ hr = E_OUTOFMEMORY;
+ goto Finished;
+ }
if (FAILED(hr = pEntry->Initialize(ASPNETCORE_PORT_ENV_STR, buffer)) ||
FAILED(hr = pEnvironmentVarTable->InsertRecord(pEntry)) ||
@@ -237,6 +242,11 @@ SERVER_PROCESS::SetupAppPath(
}
pEntry = new ENVIRONMENT_VAR_ENTRY();
+ if (pEntry == NULL)
+ {
+ hr = E_OUTOFMEMORY;
+ goto Finished;
+ }
if (FAILED(hr = pEntry->Initialize(ASPNETCORE_APP_PATH_ENV_STR, m_struAppVirtualPath.QueryStr())) ||
FAILED(hr = pEnvironmentVarTable->InsertRecord(pEntry)))
@@ -304,6 +314,11 @@ SERVER_PROCESS::SetupAppToken(
}
pEntry = new ENVIRONMENT_VAR_ENTRY();
+ if (pEntry == NULL)
+ {
+ hr = E_OUTOFMEMORY;
+ goto Finished;
+ }
if (FAILED(strAppToken.CopyA(m_straGuid.QueryStr())) ||
FAILED(hr = pEntry->Initialize(ASPNETCORE_APP_TOKEN_ENV_STR, strAppToken.QueryStr())) ||
@@ -443,6 +458,11 @@ SERVER_PROCESS::SetupCommandLine(
dwBufferSize = strRelativePath.QueryCCH() + 1;
pszFullPath = new WCHAR[dwBufferSize];
+ if (pszFullPath == NULL)
+ {
+ hr = E_OUTOFMEMORY;
+ goto Finished;
+ }
if (_wfullpath(pszFullPath,
strRelativePath.QueryStr(),
@@ -674,6 +694,11 @@ SERVER_PROCESS::PostStartCheck(
if (m_pForwarderConnection == NULL)
{
m_pForwarderConnection = new FORWARDER_CONNECTION();
+ if (m_pForwarderConnection == NULL)
+ {
+ hr = E_OUTOFMEMORY;
+ goto Finished;
+ }
hr = m_pForwarderConnection->Initialize(m_dwPort);
if (FAILED(hr))