From 7b54415c40a184b2cd4c41e726f63d61ad3ab41a Mon Sep 17 00:00:00 2001 From: elsid Date: Sat, 9 Jan 2021 21:38:56 +0100 Subject: [PATCH] Fix reference binding to null /usr/include/c++/10.2.0/bits/stl_vector.h:1046:34: runtime error: reference binding to null pointer of type 'value_type' #0 0x55e37f50008a in std::vector >::operator[](unsigned long) /usr/include/c++/10.2.0/bits/stl_vector.h:1046 #1 0x55e37f50008a in ESM::SavedGame::load(ESM::ESMReader&) /home/elsid/dev/openmw/components/esm/savedgame.cpp:28 #2 0x55e37e726139 in MWState::Character::addSlot(boost::filesystem::path const&, std::__cxx11::basic_string, std::allocator > const&) /home/elsid/dev/openmw/apps/openmw/mwstate/character.cpp:31 #3 0x55e37e742b39 in MWState::Character::Character(boost::filesystem::path const&, std::__cxx11::basic_string, std::allocator > const&) /home/elsid/dev/openmw/apps/openmw/mwstate/character.cpp:88 #4 0x55e37e7006e1 in MWState::CharacterManager::CharacterManager(boost::filesystem::path const&, std::__cxx11::basic_string, std::allocator > const&) /home/elsid/dev/openmw/apps/openmw/mwstate/charactermanager.cpp:25 #5 0x55e37e6d4140 in MWState::StateManager::StateManager(boost::filesystem::path const&, std::__cxx11::basic_string, std::allocator > const&) /home/elsid/dev/openmw/apps/openmw/mwstate/statemanagerimp.cpp:90 #6 0x55e37e82595a in OMW::Engine::prepareEngine(Settings::Manager&) /home/elsid/dev/openmw/apps/openmw/engine.cpp:641 #7 0x55e37e8439fd in OMW::Engine::go() /home/elsid/dev/openmw/apps/openmw/engine.cpp:867 #8 0x55e37e782760 in runApplication(int, char**) /home/elsid/dev/openmw/apps/openmw/main.cpp:289 #9 0x55e37f6483c3 in wrapApplication(int (*)(int, char**), int, char**, std::__cxx11::basic_string, std::allocator > const&) /home/elsid/dev/openmw/components/debug/debugging.cpp:200 #10 0x55e37ba8e3fe in main /home/elsid/dev/openmw/apps/openmw/main.cpp:301 #11 0x7f013e845151 in __libc_start_main (/usr/lib/libc.so.6+0x28151) #12 0x55e37baa0e3d in _start (/home/elsid/dev/openmw/build/gcc/ubsan/openmw+0x6c11e3d) --- components/esm/savedgame.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/esm/savedgame.cpp b/components/esm/savedgame.cpp index 9edcb1a671..7cb30f2dd2 100644 --- a/components/esm/savedgame.cpp +++ b/components/esm/savedgame.cpp @@ -25,7 +25,7 @@ void ESM::SavedGame::load (ESMReader &esm) esm.getSubNameIs("SCRN"); esm.getSubHeader(); mScreenshot.resize(esm.getSubSize()); - esm.getExact(&mScreenshot[0], mScreenshot.size()); + esm.getExact(mScreenshot.data(), mScreenshot.size()); } void ESM::SavedGame::save (ESMWriter &esm) const