React to hostfxr api changes (#577)
This commit is contained in:
parent
2ed691a960
commit
5465216be9
|
|
@ -369,7 +369,8 @@ APPLICATION_INFO::FindNativeAssemblyFromHostfxr(
|
|||
INT intIndex = -1;
|
||||
INT intPrevIndex = 0;
|
||||
BOOL fFound = FALSE;
|
||||
DWORD dwBufferSize = 1024 * 10;
|
||||
DWORD dwBufferSize = 1024;
|
||||
DWORD dwRequiredBufferSize = 0;
|
||||
|
||||
DBG_ASSERT(struFileName != NULL);
|
||||
|
||||
|
|
@ -404,16 +405,17 @@ APPLICATION_INFO::FindNativeAssemblyFromHostfxr(
|
|||
m_pConfiguration->QueryHostFxrArgCount(),
|
||||
m_pConfiguration->QueryHostFxrArguments(),
|
||||
struNativeSearchPaths.QueryStr(),
|
||||
dwBufferSize
|
||||
dwBufferSize,
|
||||
&dwRequiredBufferSize
|
||||
);
|
||||
|
||||
if (intHostFxrExitCode == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
else if (intHostFxrExitCode == API_BUFFER_TOO_SMALL)
|
||||
else if (dwRequiredBufferSize >= dwBufferSize)
|
||||
{
|
||||
dwBufferSize *= 2; // smaller buffer. increase the buffer and retry
|
||||
dwBufferSize = dwRequiredBufferSize + 1; // for null terminator
|
||||
if (FAILED(hr = struNativeSearchPaths.Resize(dwBufferSize)))
|
||||
{
|
||||
goto Finished;
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
typedef INT(*hostfxr_get_native_search_directories_fn) (const int argc, const PCWSTR argv[], PCWSTR dest, size_t dest_size);
|
||||
typedef INT(*hostfxr_get_native_search_directories_fn) (CONST INT argc, CONST PCWSTR* argv, PWSTR buffer, DWORD buffer_size, DWORD* required_buffer_size);
|
||||
typedef INT(*hostfxr_main_fn) (CONST DWORD argc, CONST PCWSTR argv[]);
|
||||
|
||||
#define READ_BUFFER_SIZE 4096
|
||||
|
|
|
|||
|
|
@ -143,4 +143,4 @@ IN_PROCESS_HANDLER::SetManangedHttpContext(
|
|||
)
|
||||
{
|
||||
m_pManagedHttpContext = pManagedHttpContext;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue