diff --git a/Client/game_sa/CModelInfoSA.cpp b/Client/game_sa/CModelInfoSA.cpp index cf132ee9b3..da81fb4f23 100644 --- a/Client/game_sa/CModelInfoSA.cpp +++ b/Client/game_sa/CModelInfoSA.cpp @@ -812,10 +812,18 @@ void CModelInfoSA::ResetTextureDictionaryID() void CModelInfoSA::StaticResetTextureDictionaries() { - while (!ms_DefaultTxdIDMap.empty()) { + while (!ms_DefaultTxdIDMap.empty()) + { const auto mi = pGame->GetModelInfo(ms_DefaultTxdIDMap.begin()->first); - assert(mi); - mi->ResetTextureDictionaryID(); + if (mi) + { + mi->ResetTextureDictionaryID(); + } + else + { + // Model was deallocated. Skip and remove it from our list. + ms_DefaultTxdIDMap.erase(ms_DefaultTxdIDMap.begin()); + } } } diff --git a/vendor/google-breakpad/src/client/linux/handler/exception_handler.cc b/vendor/google-breakpad/src/client/linux/handler/exception_handler.cc index cd94e3b5e5..1922349a6d 100644 --- a/vendor/google-breakpad/src/client/linux/handler/exception_handler.cc +++ b/vendor/google-breakpad/src/client/linux/handler/exception_handler.cc @@ -138,7 +138,7 @@ void InstallAlternateStackLocked() { // SIGSTKSZ may be too small to prevent the signal handlers from overrunning // the alternative stack. Ensure that the size of the alternative stack is // large enough. - static const unsigned kSigStackSize = std::max(16384, SIGSTKSZ); + const unsigned kSigStackSize = std::max(16384, SIGSTKSZ); // Only set an alternative stack if there isn't already one, or if the current // one is too small.