Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ==66209==ERROR: AddressSanitizer: heap-buffer-overflow on address 0xecf175e0 at pc 0x56fd93c6 bp 0xffbf62d8 sp 0xffbf62c8
- READ of size 1 at 0xecf175e0 thread T0
- #0 0x56fd93c5 in import_texture_i4 libultraship/Lib/Fast3D/gfx_pc.cpp:696
- #1 0x56fdb329 in import_texture libultraship/Lib/Fast3D/gfx_pc.cpp:869
- #2 0x56fdef14 in gfx_sp_tri1 libultraship/Lib/Fast3D/gfx_pc.cpp:1251
- #3 0x56fe4cb2 in gfx_draw_rectangle libultraship/Lib/Fast3D/gfx_pc.cpp:1899
- #4 0x56fe5296 in gfx_dp_texture_rectangle libultraship/Lib/Fast3D/gfx_pc.cpp:1967
- #5 0x56fe8a96 in gfx_run_dl libultraship/Lib/Fast3D/gfx_pc.cpp:2574
- #6 0x56fea3a3 in gfx_run libultraship/Lib/Fast3D/gfx_pc.cpp:2756
- #7 0x5732422a in Ship::Window::RunCommands(Gfx*) libultraship/Window.cpp:287
- #8 0x56e302c6 in Graph_ProcessGfxCommands soh/OTRGlobals.cpp:106
- #9 0x569dbbea in RunFrame src/code/graph.c:514
- #10 0x57350130 in gfx_sdl_main_loop libultraship/Lib/Fast3D/gfx_sdl2.cpp:199
- #11 0x57324681 in Ship::Window::MainLoop(void (*)()) libultraship/Window.cpp:323
- #12 0x56e30158 in Graph_ProcessFrame soh/OTRGlobals.cpp:101
- #13 0x569dbcd8 in Graph_ThreadEntry src/code/graph.c:538
- #14 0x569ddba5 in Main src/code/main.c:117
- #15 0x569dd7d5 in main src/code/main.c:46
- #16 0xf7052518 (/lib/i386-linux-gnu/libc.so.6+0x21518)
- #17 0xf70525f2 in __libc_start_main (/lib/i386-linux-gnu/libc.so.6+0x215f2)
- #18 0x5699f4e4 in _start (/home/baoulettes/.var/Shipwright_asan/soh/soh_asan.elf+0x3c64e4)
- 0xecf175e0 is located 0 bytes to the right of 64-byte region [0xecf175a0,0xecf175e0)
- allocated by thread T3 here:
- #0 0xf7a40473 in operator new[](unsigned int) ../../../../src/libsanitizer/asan/asan_new_delete.cpp:102
- #1 0x5731b1fc in Ship::TextureV0::ParseFileBinary(BinaryReader*, Ship::Resource*) libultraship/Texture.cpp:18
- #2 0x572cdf71 in Ship::TextureFactory::ReadTexture(BinaryReader*) libultraship/Factories/TextureFactory.cpp:16
- #3 0x572a8627 in Ship::ResourceLoader::LoadResource(std::shared_ptr<Ship::File>) libultraship/Factories/ResourceLoader.cpp:43
- #4 0x5726565a in Ship::ResourceMgr::LoadResourceThread() libultraship/ResourceMgr.cpp:135
- #5 0x57289b54 in void std::__invoke_impl<void, void (Ship::ResourceMgr::*)(), Ship::ResourceMgr*>(std::__invoke_memfun_deref, void (Ship::ResourceMgr::*&&)(), Ship::ResourceMgr*&&) /usr/include/c++/10/bits/invoke.h:73
- #6 0x57289763 in std::__invoke_result<void (Ship::ResourceMgr::*)(), Ship::ResourceMgr*>::type std::__invoke<void (Ship::ResourceMgr::*)(), Ship::ResourceMgr*>(void (Ship::ResourceMgr::*&&)(), Ship::ResourceMgr*&&) /usr/include/c++/10/bits/invoke.h:95
- #7 0x572894b2 in void std::thread::_Invoker<std::tuple<void (Ship::ResourceMgr::*)(), Ship::ResourceMgr*> >::_M_invoke<0u, 1u>(std::_Index_tuple<0u, 1u>) /usr/include/c++/10/thread:264
- #8 0x572892be in std::thread::_Invoker<std::tuple<void (Ship::ResourceMgr::*)(), Ship::ResourceMgr*> >::operator()() /usr/include/c++/10/thread:271
- #9 0x57288000 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (Ship::ResourceMgr::*)(), Ship::ResourceMgr*> > >::_M_run() /usr/include/c++/10/thread:215
- #10 0xf7454080 (/lib/i386-linux-gnu/libstdc++.so.6+0xbf080)
- #11 0xf79dd236 in asan_thread_start ../../../../src/libsanitizer/asan/asan_interceptors.cpp:207
- #12 0xf715464b (/lib/i386-linux-gnu/libc.so.6+0x12364b)
- Thread T3 created by T0 here:
- #0 0xf79dd2ca in __interceptor_pthread_create ../../../../src/libsanitizer/asan/asan_interceptors.cpp:216
- #1 0xf74542ab in std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) (/lib/i386-linux-gnu/libstdc++.so.6+0xbf2ab)
- #2 0x57285592 in decltype (::new ((void*)(0)) std::thread((declval<void (Ship::ResourceMgr::*)()>)(), (declval<Ship::ResourceMgr*>)())) std::construct_at<std::thread, void (Ship::ResourceMgr::*)(), Ship::ResourceMgr*>(std::thread*, void (Ship::ResourceMgr::*&&)(), Ship::ResourceMgr*&&) /usr/include/c++/10/bits/stl_construct.h:97
- #3 0x57285607 in void std::allocator_traits<std::allocator<std::thread> >::construct<std::thread, void (Ship::ResourceMgr::*)(), Ship::ResourceMgr*>(std::allocator<std::thread>&, std::thread*, void (Ship::ResourceMgr::*&&)(), Ship::ResourceMgr*&&) /usr/include/c++/10/bits/alloc_traits.h:514
- #4 0x572830e0 in std::_Sp_counted_ptr_inplace<std::thread, std::allocator<std::thread>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<void (Ship::ResourceMgr::*)(), Ship::ResourceMgr*>(std::allocator<std::thread>, void (Ship::ResourceMgr::*&&)(), Ship::ResourceMgr*&&) /usr/include/c++/10/bits/shared_ptr_base.h:551
- #5 0x5727eec7 in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<std::thread, std::allocator<std::thread>, void (Ship::ResourceMgr::*)(), Ship::ResourceMgr*>(std::thread*&, std::_Sp_alloc_shared_tag<std::allocator<std::thread> >, void (Ship::ResourceMgr::*&&)(), Ship::ResourceMgr*&&) /usr/include/c++/10/bits/shared_ptr_base.h:682
- #6 0x5727b43e in std::__shared_ptr<std::thread, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<std::thread>, void (Ship::ResourceMgr::*)(), Ship::ResourceMgr*>(std::_Sp_alloc_shared_tag<std::allocator<std::thread> >, void (Ship::ResourceMgr::*&&)(), Ship::ResourceMgr*&&) /usr/include/c++/10/bits/shared_ptr_base.h:1371
- #7 0x57275ab8 in std::shared_ptr<std::thread>::shared_ptr<std::allocator<std::thread>, void (Ship::ResourceMgr::*)(), Ship::ResourceMgr*>(std::_Sp_alloc_shared_tag<std::allocator<std::thread> >, void (Ship::ResourceMgr::*&&)(), Ship::ResourceMgr*&&) /usr/include/c++/10/bits/shared_ptr.h:408
- #8 0x5726e3a0 in std::shared_ptr<std::thread> std::allocate_shared<std::thread, std::allocator<std::thread>, void (Ship::ResourceMgr::*)(), Ship::ResourceMgr*>(std::allocator<std::thread> const&, void (Ship::ResourceMgr::*&&)(), Ship::ResourceMgr*&&) /usr/include/c++/10/bits/shared_ptr.h:860
- #9 0x5726a440 in std::shared_ptr<std::thread> std::make_shared<std::thread, void (Ship::ResourceMgr::*)(), Ship::ResourceMgr*>(void (Ship::ResourceMgr::*&&)(), Ship::ResourceMgr*&&) /usr/include/c++/10/bits/shared_ptr.h:876
- #10 0x57263faf in Ship::ResourceMgr::Start() libultraship/ResourceMgr.cpp:35
- #11 0x572637cc in Ship::ResourceMgr::ResourceMgr(std::shared_ptr<Ship::GlobalCtx2>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) libultraship/ResourceMgr.cpp:18
- #12 0x57258818 in decltype (::new ((void*)(0)) Ship::ResourceMgr((declval<std::shared_ptr<Ship::GlobalCtx2> >)(), (declval<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&>)(), (declval<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&>)())) std::construct_at<Ship::ResourceMgr, std::shared_ptr<Ship::GlobalCtx2>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&>(Ship::ResourceMgr*, std::shared_ptr<Ship::GlobalCtx2>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /usr/include/c++/10/bits/stl_construct.h:97
- #13 0x57258a32 in void std::allocator_traits<std::allocator<Ship::ResourceMgr> >::construct<Ship::ResourceMgr, std::shared_ptr<Ship::GlobalCtx2>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&>(std::allocator<Ship::ResourceMgr>&, Ship::ResourceMgr*, std::shared_ptr<Ship::GlobalCtx2>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /usr/include/c++/10/bits/alloc_traits.h:514
- #14 0x57255d85 in std::_Sp_counted_ptr_inplace<Ship::ResourceMgr, std::allocator<Ship::ResourceMgr>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<std::shared_ptr<Ship::GlobalCtx2>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&>(std::allocator<Ship::ResourceMgr>, std::shared_ptr<Ship::GlobalCtx2>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /usr/include/c++/10/bits/shared_ptr_base.h:551
- #15 0x57252d4b in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<Ship::ResourceMgr, std::allocator<Ship::ResourceMgr>, std::shared_ptr<Ship::GlobalCtx2>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&>(Ship::ResourceMgr*&, std::_Sp_alloc_shared_tag<std::allocator<Ship::ResourceMgr> >, std::shared_ptr<Ship::GlobalCtx2>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /usr/include/c++/10/bits/shared_ptr_base.h:682
- #16 0x5724f8f0 in std::__shared_ptr<Ship::ResourceMgr, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<Ship::ResourceMgr>, std::shared_ptr<Ship::GlobalCtx2>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&>(std::_Sp_alloc_shared_tag<std::allocator<Ship::ResourceMgr> >, std::shared_ptr<Ship::GlobalCtx2>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /usr/include/c++/10/bits/shared_ptr_base.h:1371
- #17 0x5724caea in std::shared_ptr<Ship::ResourceMgr>::shared_ptr<std::allocator<Ship::ResourceMgr>, std::shared_ptr<Ship::GlobalCtx2>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&>(std::_Sp_alloc_shared_tag<std::allocator<Ship::ResourceMgr> >, std::shared_ptr<Ship::GlobalCtx2>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /usr/include/c++/10/bits/shared_ptr.h:408
- #18 0x57249244 in std::shared_ptr<Ship::ResourceMgr> std::allocate_shared<Ship::ResourceMgr, std::allocator<Ship::ResourceMgr>, std::shared_ptr<Ship::GlobalCtx2>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&>(std::allocator<Ship::ResourceMgr> const&, std::shared_ptr<Ship::GlobalCtx2>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /usr/include/c++/10/bits/shared_ptr.h:860
- #19 0x572439aa in std::shared_ptr<Ship::ResourceMgr> std::make_shared<Ship::ResourceMgr, std::shared_ptr<Ship::GlobalCtx2>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&>(std::shared_ptr<Ship::GlobalCtx2>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /usr/include/c++/10/bits/shared_ptr.h:876
- #20 0x572324fc in Ship::GlobalCtx2::InitWindow() libultraship/GlobalCtx2.cpp:52
- #21 0x57231723 in Ship::GlobalCtx2::CreateInstance(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) libultraship/GlobalCtx2.cpp:23
- #22 0x56e2f5cc in OTRGlobals::OTRGlobals() soh/OTRGlobals.cpp:35
- #23 0x56e2f8e5 in InitOTR soh/OTRGlobals.cpp:49
- #24 0x569dd7b0 in main src/code/main.c:42
- #25 0xf7052518 (/lib/i386-linux-gnu/libc.so.6+0x21518)
- SUMMARY: AddressSanitizer: heap-buffer-overflow libultraship/Lib/Fast3D/gfx_pc.cpp:696 in import_texture_i4
- Shadow bytes around the buggy address:
- 0x3d9e2e60: fd fd fd fd fd fd fd fd fa fa fa fa 00 00 00 00
- 0x3d9e2e70: 00 00 05 fa fa fa fa fa fd fd fd fd fd fd fd fa
- 0x3d9e2e80: fa fa fa fa 00 00 00 00 00 00 00 04 fa fa fa fa
- 0x3d9e2e90: 00 00 00 00 00 00 02 fa fa fa fa fa 00 00 00 00
- 0x3d9e2ea0: 00 00 05 fa fa fa fa fa fa fa fa fa fa fa fa fa
- =>0x3d9e2eb0: fa fa fa fa 00 00 00 00 00 00 00 00[fa]fa fa fa
- 0x3d9e2ec0: 00 00 00 00 00 00 05 fa fa fa fa fa fa fa fa fa
- 0x3d9e2ed0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
- 0x3d9e2ee0: fa fa fa fa 00 00 00 00 00 00 05 fa fa fa fa fa
- 0x3d9e2ef0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
- 0x3d9e2f00: fa fa fa fa fa fa fa fa 00 00 00 00 00 00 05 fa
- Shadow byte legend (one shadow byte represents 8 application bytes):
- Addressable: 00
- Partially addressable: 01 02 03 04 05 06 07
- Heap left redzone: fa
- Freed heap region: fd
- Stack left redzone: f1
- Stack mid redzone: f2
- Stack right redzone: f3
- Stack after return: f5
- Stack use after scope: f8
- Global redzone: f9
- Global init order: f6
- Poisoned by user: f7
- Container overflow: fc
- Array cookie: ac
- Intra object redzone: bb
- ASan internal: fe
- Left alloca redzone: ca
- Right alloca redzone: cb
- Shadow gap: cc
- ==66209==ABORTING
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement