#483 crash in ConversationOption handling

Closed
opened 1 year ago by image · 1 comments
image commented 1 year ago
==12396==WARNING: AddressSanitizer failed to allocate 0xffffffffffffffc0 bytes
==12396==AddressSanitizer's allocator is terminating the process instead of returning 0
==12396==If you don't like this behavior set allocator_may_return_null=1
==12396==AddressSanitizer CHECK failed: ../../../../src/libsanitizer/sanitizer_common/sanitizer_allocator.cc:216 "((0)) != (0)" (0x0, 0x0)
    #0 0x7ffff72e6fa5  (/lib/x86_64-linux-gnu/libasan.so.5+0xf3fa5)
    #1 0x7ffff7301f39 in __sanitizer::CheckFailed(char const*, int, char const*, unsigned long long, unsigned long long) (/lib/x86_64-linux-gnu/libasan.so.5+0x10ef39)
    #2 0x7ffff72ec006  (/lib/x86_64-linux-gnu/libasan.so.5+0xf9006)
    #3 0x7ffff72ec043  (/lib/x86_64-linux-gnu/libasan.so.5+0xf9043)
    #4 0x7ffff721b7e5  (/lib/x86_64-linux-gnu/libasan.so.5+0x287e5)
    #5 0x7ffff721a4d7  (/lib/x86_64-linux-gnu/libasan.so.5+0x274d7)
    #6 0x7ffff72ddcff in operator new(unsigned long) (/lib/x86_64-linux-gnu/libasan.so.5+0xeacff)
    #7 0x5555557eb776 in __gnu_cxx::new_allocator<ConversationOption>::allocate(unsigned long, void const*) /usr/include/c++/8/ext/new_allocator.h:111
    #8 0x5555557eb776 in std::allocator_traits<std::allocator<ConversationOption> >::allocate(std::allocator<ConversationOption>&, unsigned long) /usr/include/c++/8/bits/alloc_traits.h:436
    #9 0x5555557eb776 in std::_Vector_base<ConversationOption, std::allocator<ConversationOption> >::_M_allocate(unsigned long) /usr/include/c++/8/bits/stl_vector.h:296
    #10 0x5555557eb776 in void std::vector<ConversationOption, std::allocator<ConversationOption> >::_M_realloc_insert<ConversationOption const&>(__gnu_cxx::__normal_iterator<ConversationOption*, std::vector<ConversationOption, std::allocator<ConversationOption> > >, ConversationOption const&) /usr/include/c++/8/bits/vector.tcc:427
    #11 0x5555557dc990 in std::vector<ConversationOption, std::allocator<ConversationOption> >::push_back(ConversationOption const&) /usr/include/c++/8/bits/stl_vector.h:1085
    #12 0x5555557dc990 in EQ2Emu_lua_AddConversationOption(lua_State*) ../WorldServer/LuaFunctions.cpp:995
    #13 0x5555559fe2f7 in luaD_precall (/home/eq2emu_server/server/eq2world+0x4aa2f7)
    #14 0x555555a10288 in luaV_execute (/home/eq2emu_server/server/eq2world+0x4bc288)
    #15 0x5555559fe5c3 in ccall (/home/eq2emu_server/server/eq2world+0x4aa5c3)
    #16 0x5555559fe638 in luaD_callnoyield (/home/eq2emu_server/server/eq2world+0x4aa638)
    #17 0x555555a1535f in f_call (/home/eq2emu_server/server/eq2world+0x4c135f)
    #18 0x5555559fd395 in luaD_rawrunprotected (/home/eq2emu_server/server/eq2world+0x4a9395)
    #19 0x5555559fed7e in luaD_pcall (/home/eq2emu_server/server/eq2world+0x4aad7e)
    #20 0x555555a1542f in lua_pcallk (/home/eq2emu_server/server/eq2world+0x4c142f)
    #21 0x555555753a9b in LuaInterface::CallScriptSInt32(lua_State*, unsigned char, int*) ../WorldServer/LuaInterface.cpp:741
    #22 0x555555757aff in LuaInterface::RunSpawnScript(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, char const*, Spawn*, Spawn*, char const*, bool, int, int*) ../WorldServer/LuaInterface.cpp:2318
    #23 0x5555556d6bdf in ZoneServer::CallSpawnScript(Spawn*, unsigned char, Spawn*, char const*, bool, int, int*) ../WorldServer/zoneserver.cpp:2944
    #24 0x555555822edc in Client::HandlePacket(EQApplicationPacket*) ../WorldServer/client.cpp:1337
    #25 0x5555558253d6 in Client::Process(bool) ../WorldServer/client.cpp:3150
    #26 0x5555556fb2ea in ZoneServer::ClientProcess() ../WorldServer/zoneserver.cpp:3355
    #27 0x5555556fdb6c in ZoneServer::Process() ../WorldServer/zoneserver.cpp:1463
    #28 0x555555701ae7 in ZoneLoop(void*) ../WorldServer/zoneserver.cpp:7150
    #29 0x7ffff6fbbfa2 in start_thread /build/glibc-fWwxX8/glibc-2.28/nptl/pthread_create.c:486
    #30 0x7ffff6826efe in clone (/lib/x86_64-linux-gnu/libc.so.6+0xf8efe)

``` ==12396==WARNING: AddressSanitizer failed to allocate 0xffffffffffffffc0 bytes ==12396==AddressSanitizer's allocator is terminating the process instead of returning 0 ==12396==If you don't like this behavior set allocator_may_return_null=1 ==12396==AddressSanitizer CHECK failed: ../../../../src/libsanitizer/sanitizer_common/sanitizer_allocator.cc:216 "((0)) != (0)" (0x0, 0x0) #0 0x7ffff72e6fa5 (/lib/x86_64-linux-gnu/libasan.so.5+0xf3fa5) #1 0x7ffff7301f39 in __sanitizer::CheckFailed(char const*, int, char const*, unsigned long long, unsigned long long) (/lib/x86_64-linux-gnu/libasan.so.5+0x10ef39) #2 0x7ffff72ec006 (/lib/x86_64-linux-gnu/libasan.so.5+0xf9006) #3 0x7ffff72ec043 (/lib/x86_64-linux-gnu/libasan.so.5+0xf9043) #4 0x7ffff721b7e5 (/lib/x86_64-linux-gnu/libasan.so.5+0x287e5) #5 0x7ffff721a4d7 (/lib/x86_64-linux-gnu/libasan.so.5+0x274d7) #6 0x7ffff72ddcff in operator new(unsigned long) (/lib/x86_64-linux-gnu/libasan.so.5+0xeacff) #7 0x5555557eb776 in __gnu_cxx::new_allocator<ConversationOption>::allocate(unsigned long, void const*) /usr/include/c++/8/ext/new_allocator.h:111 #8 0x5555557eb776 in std::allocator_traits<std::allocator<ConversationOption> >::allocate(std::allocator<ConversationOption>&, unsigned long) /usr/include/c++/8/bits/alloc_traits.h:436 #9 0x5555557eb776 in std::_Vector_base<ConversationOption, std::allocator<ConversationOption> >::_M_allocate(unsigned long) /usr/include/c++/8/bits/stl_vector.h:296 #10 0x5555557eb776 in void std::vector<ConversationOption, std::allocator<ConversationOption> >::_M_realloc_insert<ConversationOption const&>(__gnu_cxx::__normal_iterator<ConversationOption*, std::vector<ConversationOption, std::allocator<ConversationOption> > >, ConversationOption const&) /usr/include/c++/8/bits/vector.tcc:427 #11 0x5555557dc990 in std::vector<ConversationOption, std::allocator<ConversationOption> >::push_back(ConversationOption const&) /usr/include/c++/8/bits/stl_vector.h:1085 #12 0x5555557dc990 in EQ2Emu_lua_AddConversationOption(lua_State*) ../WorldServer/LuaFunctions.cpp:995 #13 0x5555559fe2f7 in luaD_precall (/home/eq2emu_server/server/eq2world+0x4aa2f7) #14 0x555555a10288 in luaV_execute (/home/eq2emu_server/server/eq2world+0x4bc288) #15 0x5555559fe5c3 in ccall (/home/eq2emu_server/server/eq2world+0x4aa5c3) #16 0x5555559fe638 in luaD_callnoyield (/home/eq2emu_server/server/eq2world+0x4aa638) #17 0x555555a1535f in f_call (/home/eq2emu_server/server/eq2world+0x4c135f) #18 0x5555559fd395 in luaD_rawrunprotected (/home/eq2emu_server/server/eq2world+0x4a9395) #19 0x5555559fed7e in luaD_pcall (/home/eq2emu_server/server/eq2world+0x4aad7e) #20 0x555555a1542f in lua_pcallk (/home/eq2emu_server/server/eq2world+0x4c142f) #21 0x555555753a9b in LuaInterface::CallScriptSInt32(lua_State*, unsigned char, int*) ../WorldServer/LuaInterface.cpp:741 #22 0x555555757aff in LuaInterface::RunSpawnScript(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, char const*, Spawn*, Spawn*, char const*, bool, int, int*) ../WorldServer/LuaInterface.cpp:2318 #23 0x5555556d6bdf in ZoneServer::CallSpawnScript(Spawn*, unsigned char, Spawn*, char const*, bool, int, int*) ../WorldServer/zoneserver.cpp:2944 #24 0x555555822edc in Client::HandlePacket(EQApplicationPacket*) ../WorldServer/client.cpp:1337 #25 0x5555558253d6 in Client::Process(bool) ../WorldServer/client.cpp:3150 #26 0x5555556fb2ea in ZoneServer::ClientProcess() ../WorldServer/zoneserver.cpp:3355 #27 0x5555556fdb6c in ZoneServer::Process() ../WorldServer/zoneserver.cpp:1463 #28 0x555555701ae7 in ZoneLoop(void*) ../WorldServer/zoneserver.cpp:7150 #29 0x7ffff6fbbfa2 in start_thread /build/glibc-fWwxX8/glibc-2.28/nptl/pthread_create.c:486 #30 0x7ffff6826efe in clone (/lib/x86_64-linux-gnu/libc.so.6+0xf8efe) ```
image commented 1 year ago
Collaborator

should be fixed by f57a91d0cb

should be fixed by https://git.eq2emu.com/devn00b/EQ2EMu/commit/f57a91d0cb0833c47c097e3d368ac113f37518ed
Sign in to join this conversation.
Loading...
Cancel
Save
There is no content yet.