

parse_drmingw.shscript (only outputs ??:0)...



































9dd46eb. Here's a backtrace from the coredump. Don't know if it says anything, but I can send more if needed.
Core was generated by `./DDNet'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x0000563224f92cea in std::_Rb_tree_node<int>* std::_Rb_tree<int, int, std::_Identity<int>, std::less<int>, std::allocator<int> >::_M_copy<std::_Rb_tree<int, int, std::_Identity<int>, st>
[Current thread is 1 (Thread 0x7f6cd717d980 (LWP 14588))]
(gdb) bt full
#0 0x0000563224f92cea in std::_Rb_tree_node<int>* std::_Rb_tree<int, int, std::_Identity<int>, std::less<int>, std::allocator<int> >::_M_copy<std::_Rb_tree<int, int, std::_Identity<int>, st>
No symbol table info available.
#1 0x0000563224f9eb1b in CGameClient::IntersectCharacter(vector2_base<float>, vector2_base<float>, vector2_base<float>&, int) ()
No symbol table info available.
#2 0x0000563224f7c93f in CPlayers::RenderHookCollLine(CNetObj_Character const*, CNetObj_Character const*, int, float) ()
No symbol table info available.
#3 0x0000563224f0af98 in CGhost::OnRender() [clone .part.0] ()
No symbol table info available.
#4 0x0000563224f99192 in CGameClient::OnRender() ()
No symbol table info available.
#5 0x0000563224ea461c in CClient::Render() ()
No symbol table info available.
#6 0x0000563224ead4c8 in CClient::Run() ()
No symbol table info available.
#7 0x0000563224e3e60a in main ()
No symbol table info available.
(gdb)


9dd46eb. Here's a backtrace from the coredump. Don't know if it says anything, but I can send more if needed.
Core was generated by `./DDNet'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x0000563224f92cea in std::_Rb_tree_node<int>* std::_Rb_tree<int, int, std::_Identity<int>, std::less<int>, std::allocator<int> >::_M_copy<std::_Rb_tree<int, int, std::_Identity<int>, st>
[Current thread is 1 (Thread 0x7f6cd717d980 (LWP 14588))]
(gdb) bt full
#0 0x0000563224f92cea in std::_Rb_tree_node<int>* std::_Rb_tree<int, int, std::_Identity<int>, std::less<int>, std::allocator<int> >::_M_copy<std::_Rb_tree<int, int, std::_Identity<int>, st>
No symbol table info available.
#1 0x0000563224f9eb1b in CGameClient::IntersectCharacter(vector2_base<float>, vector2_base<float>, vector2_base<float>&, int) ()
No symbol table info available.
#2 0x0000563224f7c93f in CPlayers::RenderHookCollLine(CNetObj_Character const*, CNetObj_Character const*, int, float) ()
No symbol table info available.
#3 0x0000563224f0af98 in CGhost::OnRender() [clone .part.0] ()
No symbol table info available.
#4 0x0000563224f99192 in CGameClient::OnRender() ()
No symbol table info available.
#5 0x0000563224ea461c in CClient::Render() ()
No symbol table info available.
#6 0x0000563224ead4c8 in CClient::Run() ()
No symbol table info available.
#7 0x0000563224e3e60a in main ()
No symbol table info available.
(gdb) IntersectCharacter can lead to a std::_Rb_tree::_M_copy happening


std::_Rb_tree. It's almost definitely one of the std::sets















cp: cannot stat 'build/outputs/bundle/release/DDNet-release.aab': No such file or directory./scripts/android/cmake_android.sh arm64 DDNet Release./scripts/compile_libs/gen_libs.sh ../tmp android and copied them to ddnet-libs in root dircp: cannot stat 'compile_libs/png/build_android_arm/libpng16.a': No such file or directory cp: cannot stat 'compile_libs/png/build_android_arm64/libpng16.a': No such file or directory



IntersectCharacter can lead to a std::_Rb_tree::_M_copy happening 



-DCMAKE_BUILD_TYPE=Debug what else am I supposed to change/add?
readelf -S ./DDNet | grep -i debug
[30] .debug_aranges PROGBITS 0000000000000000 00387860
[31] .debug_info PROGBITS 0000000000000000 00387950
[32] .debug_abbrev PROGBITS 0000000000000000 00387ed3
[33] .debug_line PROGBITS 0000000000000000 0038804a
[34] .debug_str PROGBITS 0000000000000000 00388264
[35] .debug_ranges PROGBITS 0000000000000000 00388690
gdb ./DDNet does that load the symbol table properly?
Reading symbols from DDNet...
(gdb)



std::set is the culprit
std::set everywhere to detect more bugs 
std::set is just revealing the issue








patch -p1 < test.patch


std::set into CCharacterCore, I'm unsure why the copy constructor of std::set didn't work. It might be a good idea to check and see if there is a further underlying issue @C0D3D3V.
Backtrace
```c++
#0 gnu_cxx::new_allocator<std::_Rb_tree_node >::construct (this=0x7fffffff95e8, p=0x555558935fd0) at /usr/include/c++/10.2/ext/new_allocator.h:150
No locals.
#1 0x0000555555831100 in std::...

9dd46eb. Here's a backtrace from the coredump. Don't know if it says anything, but I can send more if needed.
Core was generated by `./DDNet'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x0000563224f92cea in std::_Rb_tree_node<int>* std::_Rb_tree<int, int, std::_Identity<int>, std::less<int>, std::allocator<int> >::_M_copy<std::_Rb_tree<int, int, std::_Identity<int>, st>
[Current thread is 1 (Thread 0x7f6cd717d980 (LWP 14588))]
(gdb) bt full
#0 0x0000563224f92cea in std::_Rb_tree_node<int>* std::_Rb_tree<int, int, std::_Identity<int>, std::less<int>, std::allocator<int> >::_M_copy<std::_Rb_tree<int, int, std::_Identity<int>, st>
No symbol table info available.
#1 0x0000563224f9eb1b in CGameClient::IntersectCharacter(vector2_base<float>, vector2_base<float>, vector2_base<float>&, int) ()
No symbol table info available.
#2 0x0000563224f7c93f in CPlayers::RenderHookCollLine(CNetObj_Character const*, CNetObj_Character const*, int, float) ()
No symbol table info available.
#3 0x0000563224f0af98 in CGhost::OnRender() [clone .part.0] ()
No symbol table info available.
#4 0x0000563224f99192 in CGameClient::OnRender() ()
No symbol table info available.
#5 0x0000563224ea461c in CClient::Render() ()
No symbol table info available.
#6 0x0000563224ead4c8 in CClient::Run() ()
No symbol table info available.
#7 0x0000563224e3e60a in main ()
No symbol table info available.
(gdb) 

std::set is just revealing the issue 













CC=clang CXX=clang++ CXXFLAGS="-fsanitize=address,undefined -fsanitize-recover=address,undefined -fno-omit-frame-pointer" CFLAGS="-fsanitize=address,undefined -fsanitize-recover=address,undefined -fno-omit-frame-pointer" cmake -DCMAKE_BUILD_TYPE=Debug .. && make -j$(nproc)
then you can start DDnet like this:
UBSAN_OPTIONS=log_path=./SAN:print_stacktrace=1:halt_on_errors=0 ASAN_OPTIONS=log_path=./SAN:print_stacktrace=1:check_initialization_order=1:detect_leaks=1:halt_on_errors=0 ./DDNet
Thats at least how I build and run with Asan
@furo (edited)







































cp: cannot stat 'build/outputs/bundle/release/DDNet-release.aab': No such file or directory 






