X Tutup
Skip to content

Master b4894e6 (20230213): x64-Debug build on Windows VS2019 Crash to Desktop #5545

@craigo-

Description

@craigo-

Observed behaviour

I have compiled master at commit b4894e6, using the x64-Debug configuration in Visual Studio 2019 on Windows. The build completes successfully. However, when running pioneer.exe, at about 2/3 of the way through the startup splash (8.0 billion years), the game crashes to desktop.

Debug produces the following:

Screenshot:
image

Call Stack:

vcruntime140d.dll!00007ff949d61416()
pioneer.exe!std::_Char_traits<char,int>::copy(char * const _First1, const char * const _First2, const unsigned __int64 _Count) Line 67
	at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\include\xstring(67)
pioneer.exe!std::string::_Construct_lv_contents(const std::string & _Right) Line 2917
	at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\include\xstring(2917)
pioneer.exe!std::string::basic_string<char,std::char_traits<char>,std::allocator<char>>(const std::string & _Right) Line 2421
	at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\include\xstring(2421)
pioneer.exe!std::_Default_allocator_traits<std::allocator<std::string>>::construct<std::string,std::string const &>(std::allocator<std::string> & __formal, std::string * const _Ptr, const std::string & <_Args_0>) Line 683
	at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\include\xmemory(683)
pioneer.exe!std::vector<std::string,std::allocator<std::string>>::_Emplace_reallocate<std::string const &>(std::string * const _Whereptr, const std::string & <_Val_0>) Line 777
	at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\include\vector(777)
pioneer.exe!std::vector<std::string,std::allocator<std::string>>::emplace_back<std::string const &>(const std::string & <_Val_0>) Line 734
	at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\include\vector(734)
pioneer.exe!std::vector<std::string,std::allocator<std::string>>::push_back(const std::string & _Val) Line 744
	at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\include\vector(744)
pioneer.exe!Assimp::IOSystem::PushDirectory(const std::string & path) Line 286
	at C:\Stuff\Pioneer\pioneer-thirdparty\win32\include\assimp\IOSystem.hpp(286)
[External Code]
pioneer.exe!Assimp::Importer::ReadFile(const std::string & pFile, unsigned int pFlags) Line 645
	at C:\Stuff\Pioneer\pioneer-thirdparty\win32\include\assimp\Importer.hpp(645)
pioneer.exe!SceneGraph::Loader::LoadMesh(const std::string & filename, const std::vector<SceneGraph::AnimDefinition,std::allocator<SceneGraph::AnimDefinition>> & animDefs) Line 345
	at C:\Stuff\Pioneer\pioneer\src\scenegraph\Loader.cpp(345)
pioneer.exe!SceneGraph::Loader::CreateModel(SceneGraph::ModelDefinition & def) Line 255
	at C:\Stuff\Pioneer\pioneer\src\scenegraph\Loader.cpp(255)
pioneer.exe!SceneGraph::Loader::LoadModel(const std::string & shortname, const std::string & basepath) Line 198
	at C:\Stuff\Pioneer\pioneer\src\scenegraph\Loader.cpp(198)
pioneer.exe!SceneGraph::Loader::LoadModel(const std::string & filename) Line 131
	at C:\Stuff\Pioneer\pioneer\src\scenegraph\Loader.cpp(131)
pioneer.exe!ModelCache::FindModel(const std::string & name) Line 25
	at C:\Stuff\Pioneer\pioneer\src\ModelCache.cpp(25)
pioneer.exe!Pi::FindModel(const std::string & name, bool allowPlaceholder) Line 1168
	at C:\Stuff\Pioneer\pioneer\src\Pi.cpp(1168)
pioneer.exe!CityOnPlanet::LoadBuildingType(std::basic_string_view<char,std::char_traits<char>> key, const nlohmann::basic_json<std::map,std::vector,std::string,bool,__int64,unsigned __int64,double,std::allocator,nlohmann::adl_serializer> & buildingDef, CityOnPlanet::BuildingType & out) Line 105
	at C:\Stuff\Pioneer\pioneer\src\CityOnPlanet.cpp(105)
pioneer.exe!CityOnPlanet::LoadCityFlavour(const FileSystem::FileInfo & file) Line 213
	at C:\Stuff\Pioneer\pioneer\src\CityOnPlanet.cpp(213)
pioneer.exe!CityOnPlanet::Init() Line 244
	at C:\Stuff\Pioneer\pioneer\src\CityOnPlanet.cpp(244)
[External Code]
pioneer.exe!StartupScreen::RunNewLoader() Line 630
	at C:\Stuff\Pioneer\pioneer\src\Pi.cpp(630)
pioneer.exe!StartupScreen::Update(float deltaTime) Line 609
	at C:\Stuff\Pioneer\pioneer\src\Pi.cpp(609)
pioneer.exe!Application::Run() Line 194
	at C:\Stuff\Pioneer\pioneer\src\core\Application.cpp(194)
pioneer.exe!SDL_main(int argc, char * * argv) Line 186
	at C:\Stuff\Pioneer\pioneer\src\main.cpp(186)
[External Code]

NB: I can successfully compile and successfully run the same commit version using the x64-Release configuration in VS2019.

Expected behaviour

The debug version works :)

Steps to reproduce

Follow steps in COMPILING.txt, part 1.4

My pioneer version (and OS):

Compiled from master: b4894e6 (20230213)
Visual Studio 2019 16.11.24
VS Configuration: x64-Debug
Windows 10 Enterprise 22H2

Supporting Files

output.txt:
output.txt

opengl.txt:
opengl.txt

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      X Tutup