dbg_stress 1
for a few hours and some of them had this crash eventuallym_pClient->m_Snap.m_aCharacters[m_pClient->m_aLocalIDs[DummyID]].m_Cur
being null before calling collsion stuffOnStateChange
component callbackCLayer
and CCollision
to prevent accesses to invalid memory when the classes are used after the map data has ...c++
bool CGraphicsBackend_SDL_GL::TryCreateMsgBox(bool AsError, const char *pTitle, const char *pMsg)
{
m_pProcessor->ErroneousCleanup();
SDL_DestroyWindow(m_pWindow);
SDL_ShowSimpleMessageBox(AsError ? SDL_MESSAGEBOX_ERROR : SDL_MESSAGEBOX_WARNING, pTitle, pMsg, nullptr);
return true;
}
the function is so small
i guess we can live with 2 if
hereThis function should be called on the thread that created the parent window, or on the main thread if the messagebox has no parent. It will block execution of that thread until the user clicks a button or closes the messagebox.
dbg_break
c++
bool CGraphicsBackend_SDL_GL::TryCreateMsgBox(bool AsError, const char *pTitle, const char *pMsg)
{
m_pProcessor->ErroneousCleanup();
SDL_DestroyWindow(m_pWindow);
SDL_ShowSimpleMessageBox(AsError ? SDL_MESSAGEBOX_ERROR : SDL_MESSAGEBOX_WARNING, pTitle, pMsg, nullptr);
return true;
}
the function is so small
i guess we can live with 2 if
here m_pWindow
to SDL_ShowSimpleMessageBox
as the last parameter to make it a modal dialog instead of destroying the window? Or does that also block input to the dialog for you?m_pWindow
to SDL_ShowSimpleMessageBox
as the last parameter to make it a modal dialog instead of destroying the window? Or does that also block input to the dialog for you?