mirror of
https://github.com/stenzek/duckstation.git
synced 2025-06-06 03:25:36 +00:00
CrashHandler: More Wcast-function-type-mismatch fixes
This commit is contained in:
parent
af085d7e5a
commit
6802f77cb9
@ -57,7 +57,9 @@ static bool WriteMinidump(HMODULE hDbgHelp, HANDLE hFile, HANDLE hProcess, DWORD
|
|||||||
PMINIDUMP_CALLBACK_INFORMATION CallbackParam);
|
PMINIDUMP_CALLBACK_INFORMATION CallbackParam);
|
||||||
|
|
||||||
PFNMINIDUMPWRITEDUMP minidump_write_dump =
|
PFNMINIDUMPWRITEDUMP minidump_write_dump =
|
||||||
hDbgHelp ? reinterpret_cast<PFNMINIDUMPWRITEDUMP>(GetProcAddress(hDbgHelp, "MiniDumpWriteDump")) : nullptr;
|
hDbgHelp ?
|
||||||
|
reinterpret_cast<PFNMINIDUMPWRITEDUMP>(reinterpret_cast<void*>(GetProcAddress(hDbgHelp, "MiniDumpWriteDump"))) :
|
||||||
|
nullptr;
|
||||||
if (!minidump_write_dump)
|
if (!minidump_write_dump)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
40
src/common/thirdparty/StackWalker.cpp
vendored
40
src/common/thirdparty/StackWalker.cpp
vendored
@ -364,21 +364,21 @@ public:
|
|||||||
m_hDbhHelp = StackWalker::LoadDbgHelpLibrary();
|
m_hDbhHelp = StackWalker::LoadDbgHelpLibrary();
|
||||||
if (m_hDbhHelp == NULL)
|
if (m_hDbhHelp == NULL)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
pSI = (tSI)GetProcAddress(m_hDbhHelp, "SymInitialize");
|
pSI = (tSI)(void*)GetProcAddress(m_hDbhHelp, "SymInitialize");
|
||||||
pSC = (tSC)GetProcAddress(m_hDbhHelp, "SymCleanup");
|
pSC = (tSC)(void*)GetProcAddress(m_hDbhHelp, "SymCleanup");
|
||||||
|
|
||||||
pSW = (tSW)GetProcAddress(m_hDbhHelp, "StackWalk64");
|
pSW = (tSW)(void*)GetProcAddress(m_hDbhHelp, "StackWalk64");
|
||||||
pSGO = (tSGO)GetProcAddress(m_hDbhHelp, "SymGetOptions");
|
pSGO = (tSGO)(void*)GetProcAddress(m_hDbhHelp, "SymGetOptions");
|
||||||
pSSO = (tSSO)GetProcAddress(m_hDbhHelp, "SymSetOptions");
|
pSSO = (tSSO)(void*)GetProcAddress(m_hDbhHelp, "SymSetOptions");
|
||||||
|
|
||||||
pSFTA = (tSFTA)GetProcAddress(m_hDbhHelp, "SymFunctionTableAccess64");
|
pSFTA = (tSFTA)(void*)GetProcAddress(m_hDbhHelp, "SymFunctionTableAccess64");
|
||||||
pSGLFA = (tSGLFA)GetProcAddress(m_hDbhHelp, "SymGetLineFromAddr64");
|
pSGLFA = (tSGLFA)(void*)GetProcAddress(m_hDbhHelp, "SymGetLineFromAddr64");
|
||||||
pSGMB = (tSGMB)GetProcAddress(m_hDbhHelp, "SymGetModuleBase64");
|
pSGMB = (tSGMB)(void*)GetProcAddress(m_hDbhHelp, "SymGetModuleBase64");
|
||||||
pSGMI = (tSGMI)GetProcAddress(m_hDbhHelp, "SymGetModuleInfo64");
|
pSGMI = (tSGMI)(void*)GetProcAddress(m_hDbhHelp, "SymGetModuleInfo64");
|
||||||
pSGSFA = (tSGSFA)GetProcAddress(m_hDbhHelp, "SymGetSymFromAddr64");
|
pSGSFA = (tSGSFA)(void*)GetProcAddress(m_hDbhHelp, "SymGetSymFromAddr64");
|
||||||
pUDSN = (tUDSN)GetProcAddress(m_hDbhHelp, "UnDecorateSymbolName");
|
pUDSN = (tUDSN)(void*)GetProcAddress(m_hDbhHelp, "UnDecorateSymbolName");
|
||||||
pSLM = (tSLM)GetProcAddress(m_hDbhHelp, "SymLoadModule64");
|
pSLM = (tSLM)(void*)GetProcAddress(m_hDbhHelp, "SymLoadModule64");
|
||||||
pSGSP = (tSGSP)GetProcAddress(m_hDbhHelp, "SymGetSearchPath");
|
pSGSP = (tSGSP)(void*)GetProcAddress(m_hDbhHelp, "SymGetSearchPath");
|
||||||
|
|
||||||
if (pSC == NULL || pSFTA == NULL || pSGMB == NULL || pSGMI == NULL || pSGO == NULL ||
|
if (pSC == NULL || pSFTA == NULL || pSGMB == NULL || pSGMI == NULL || pSGO == NULL ||
|
||||||
pSGSFA == NULL || pSI == NULL || pSSO == NULL || pSW == NULL || pUDSN == NULL ||
|
pSGSFA == NULL || pSI == NULL || pSSO == NULL || pSW == NULL || pUDSN == NULL ||
|
||||||
@ -592,9 +592,9 @@ private:
|
|||||||
hToolhelp = LoadLibrary(dllname[i]);
|
hToolhelp = LoadLibrary(dllname[i]);
|
||||||
if (hToolhelp == NULL)
|
if (hToolhelp == NULL)
|
||||||
continue;
|
continue;
|
||||||
pCT32S = (tCT32S)GetProcAddress(hToolhelp, "CreateToolhelp32Snapshot");
|
pCT32S = (tCT32S)(void*)GetProcAddress(hToolhelp, "CreateToolhelp32Snapshot");
|
||||||
pM32F = (tM32F)GetProcAddress(hToolhelp, "Module32First");
|
pM32F = (tM32F)(void*)GetProcAddress(hToolhelp, "Module32First");
|
||||||
pM32N = (tM32N)GetProcAddress(hToolhelp, "Module32Next");
|
pM32N = (tM32N)(void*)GetProcAddress(hToolhelp, "Module32Next");
|
||||||
if ((pCT32S != NULL) && (pM32F != NULL) && (pM32N != NULL))
|
if ((pCT32S != NULL) && (pM32F != NULL) && (pM32N != NULL))
|
||||||
break; // found the functions!
|
break; // found the functions!
|
||||||
FreeLibrary(hToolhelp);
|
FreeLibrary(hToolhelp);
|
||||||
@ -669,10 +669,10 @@ private:
|
|||||||
if (hPsapi == NULL)
|
if (hPsapi == NULL)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
pEPM = (tEPM)GetProcAddress(hPsapi, "EnumProcessModules");
|
pEPM = (tEPM)(void*)GetProcAddress(hPsapi, "EnumProcessModules");
|
||||||
pGMFNE = (tGMFNE)GetProcAddress(hPsapi, "GetModuleFileNameExA");
|
pGMFNE = (tGMFNE)(void*)GetProcAddress(hPsapi, "GetModuleFileNameExA");
|
||||||
pGMBN = (tGMFNE)GetProcAddress(hPsapi, "GetModuleBaseNameA");
|
pGMBN = (tGMFNE)(void*)GetProcAddress(hPsapi, "GetModuleBaseNameA");
|
||||||
pGMI = (tGMI)GetProcAddress(hPsapi, "GetModuleInformation");
|
pGMI = (tGMI)(void*)GetProcAddress(hPsapi, "GetModuleInformation");
|
||||||
if ((pEPM == NULL) || (pGMFNE == NULL) || (pGMBN == NULL) || (pGMI == NULL))
|
if ((pEPM == NULL) || (pGMFNE == NULL) || (pGMBN == NULL) || (pGMI == NULL))
|
||||||
{
|
{
|
||||||
// we couldn't find all functions
|
// we couldn't find all functions
|
||||||
|
Loading…
x
Reference in New Issue
Block a user