Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- =================================================================
- ==86220==ERROR: AddressSanitizer: heap-buffer-overflow on address 0xecfb9f40 at pc 0x56f763b0 bp 0xfffc60a8 sp 0xfffc6098
- READ of size 1 at 0xecfb9f40 thread T0
- #0 0x56f763af in import_texture_i4 libultraship/Lib/Fast3D/gfx_pc.cpp:697
- #1 0x56f78313 in import_texture libultraship/Lib/Fast3D/gfx_pc.cpp:870
- #2 0x56f7befe in gfx_sp_tri1 libultraship/Lib/Fast3D/gfx_pc.cpp:1252
- #3 0x56f81c9c in gfx_draw_rectangle libultraship/Lib/Fast3D/gfx_pc.cpp:1900
- #4 0x56f82280 in gfx_dp_texture_rectangle libultraship/Lib/Fast3D/gfx_pc.cpp:1968
- #5 0x56f85a80 in gfx_run_dl libultraship/Lib/Fast3D/gfx_pc.cpp:2575
- #6 0x56f8738d in gfx_run libultraship/Lib/Fast3D/gfx_pc.cpp:2757
- #7 0x572c1214 in Ship::Window::RunCommands(Gfx*) libultraship/Window.cpp:287
- #8 0x56dcd2b0 in Graph_ProcessGfxCommands soh/OTRGlobals.cpp:106
- #9 0x56978bea in RunFrame src/code/graph.c:514
- #10 0x572ed11a in gfx_sdl_main_loop libultraship/Lib/Fast3D/gfx_sdl2.cpp:199
- #11 0x572c166b in Ship::Window::MainLoop(void (*)()) libultraship/Window.cpp:323
- #12 0x56dcd142 in Graph_ProcessFrame soh/OTRGlobals.cpp:101
- #13 0x56978cd8 in Graph_ThreadEntry src/code/graph.c:538
- #14 0x5697aba5 in Main src/code/main.c:117
- #15 0x5697a7d5 in main src/code/main.c:46
- #16 0xf7099518 (/lib/i386-linux-gnu/libc.so.6+0x21518)
- #17 0xf70995f2 in __libc_start_main (/lib/i386-linux-gnu/libc.so.6+0x215f2)
- #18 0x5693c4e4 in _start (/home/baoulettes/.var/Shipwright_asan/soh/soh.elf+0x3c64e4)
- 0xecfb9f40 is located 0 bytes to the right of 64-byte region [0xecfb9f00,0xecfb9f40)
- allocated by thread T3 here:
- #0 0xf7a87473 in operator new[](unsigned int) ../../../../src/libsanitizer/asan/asan_new_delete.cpp:102
- #1 0x572b81e6 in Ship::TextureV0::ParseFileBinary(BinaryReader*, Ship::Resource*) libultraship/Texture.cpp:18
- #2 0x5726af5b in Ship::TextureFactory::ReadTexture(BinaryReader*) libultraship/Factories/TextureFactory.cpp:16
- #3 0x57245611 in Ship::ResourceLoader::LoadResource(std::shared_ptr<Ship::File>) libultraship/Factories/ResourceLoader.cpp:43
- #4 0x57202644 in Ship::ResourceMgr::LoadResourceThread() libultraship/ResourceMgr.cpp:135
- #5 0x57226b3e 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 0x5722674d 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 0x5722649c 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 0x572262a8 in std::thread::_Invoker<std::tuple<void (Ship::ResourceMgr::*)(), Ship::ResourceMgr*> >::operator()() /usr/include/c++/10/thread:271
- #9 0x57224fea in std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (Ship::ResourceMgr::*)(), Ship::ResourceMgr*> > >::_M_run() /usr/include/c++/10/thread:215
- #10 0xf749b080 (/lib/i386-linux-gnu/libstdc++.so.6+0xbf080)
- #11 0xf7a24236 in asan_thread_start ../../../../src/libsanitizer/asan/asan_interceptors.cpp:207
- #12 0xf719b64b (/lib/i386-linux-gnu/libc.so.6+0x12364b)
- Thread T3 created by T0 here:
- #0 0xf7a242ca in __interceptor_pthread_create ../../../../src/libsanitizer/asan/asan_interceptors.cpp:216
- #1 0xf749b2ab 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 0x5722257c 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 0x572225f1 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 0x572200ca 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 0x5721beb1 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 0x57218428 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 0x57212aa2 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 0x5720b38a 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 0x5720742a 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 0x57200f99 in Ship::ResourceMgr::Start() libultraship/ResourceMgr.cpp:35
- #11 0x572007b6 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 0x571f5802 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 0x571f5a1c 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 0x571f2d6f 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 0x571efd35 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 0x571ec8da 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 0x571e9ad4 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 0x571e622e 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 0x571e0994 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 0x571cf4e6 in Ship::GlobalCtx2::InitWindow() libultraship/GlobalCtx2.cpp:52
- #21 0x571ce70d in Ship::GlobalCtx2::CreateInstance(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) libultraship/GlobalCtx2.cpp:23
- #22 0x56dcc5b6 in OTRGlobals::OTRGlobals() soh/OTRGlobals.cpp:35
- #23 0x56dcc8cf in InitOTR soh/OTRGlobals.cpp:49
- #24 0x5697a7b0 in main src/code/main.c:42
- #25 0xf7099518 (/lib/i386-linux-gnu/libc.so.6+0x21518)
- SUMMARY: AddressSanitizer: heap-buffer-overflow libultraship/Lib/Fast3D/gfx_pc.cpp:697 in import_texture_i4
- Shadow bytes around the buggy address:
- 0x3d9f7390: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
- 0x3d9f73a0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
- 0x3d9f73b0: 00 00 00 00 00 00 04 fa fa fa fa fa fa fa fa fa
- 0x3d9f73c0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
- 0x3d9f73d0: fa fa fa fa 00 00 00 00 00 00 02 fa fa fa fa fa
- =>0x3d9f73e0: 00 00 00 00 00 00 00 00[fa]fa fa fa 00 00 00 00
- 0x3d9f73f0: 00 00 02 fa fa fa fa fa 00 00 00 00 00 00 00 00
- 0x3d9f7400: fa fa fa fa 00 00 00 00 00 00 00 04 fa fa fa fa
- 0x3d9f7410: fd fd fd fd fd fd fd fa fa fa fa fa 00 00 00 00
- 0x3d9f7420: 00 00 04 fa fa fa fa fa 00 00 00 00 00 00 04 fa
- 0x3d9f7430: fa fa fa fa fd fd fd fd fd fd fd fd fa fa fa 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
- ==86220==ABORTING
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement