View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
---|---|---|---|---|---|---|---|---|---|
0005977 | Spring engine | General | public | 2018-05-08 18:07 | 2018-05-08 19:44 | ||||
Reporter | abma | ||||||||
Assigned To | Kloot | ||||||||
Priority | normal | Severity | crash | Reproducibility | have not tried | ||||
Status | resolved | Resolution | fixed | ||||||
Product Version | |||||||||
Target Version | 105.0 | Fixed in Version | |||||||
Summary | 0005977: ==2874==ERROR: AddressSanitizer: attempting double-free on 0x604000088f50 in thread T21 at start | ||||||||
Description | ==2874==ERROR: AddressSanitizer: attempting double-free on 0x604000088f50 in thread T21: [f=-000001] [Sound] [ISound::Initialize] spawning sound-thread (101.0ms) [f=-000001] [Sound] [ISound::Initialize] spawning sound-thread (201.3ms) [f=-000001] [Sound] [ISound::Initialize] spawning sound-thread (301.5ms) #0 0x7f5c6c734040 in operator delete(void*) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xdc040) #1 0x7f5c697cddce in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_assign(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x11ddce) #2 0x7f5c697ce0e8 in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator=(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x11e0e8) 0000003 0x5601fba21805 in LogSinkHandler::RecordLogMessage(int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) rts/System/Log/LogSinkHandler.cpp:50 0000004 0x5601fba213de in log_sink_record_logSinkHandler rts/System/Log/LogSinkHandler.cpp:14 0000005 0x5601fba123d7 in log_backend_record rts/System/Log/Backend.cpp:80 #6 0x5601fba17f30 in log_filter_record rts/System/Log/DefaultFilter.cpp:209 #7 0x5601fba18322 in log_frontend_record rts/System/Log/DefaultFilter.cpp:258 #8 0x5601fbb38679 in CSound::UpdateThread(int) rts/System/Sound/OpenAL/Sound.cpp:632 #9 0x5601fbb47ed2 in void std::__invoke_impl<void, void (CSound::*&)(int), CSound*&, int&>(std::__invoke_memfun_deref, void (CSound::*&)(int), CSound*&, int&) /usr/include/c++/7/bits/invoke.h:73 0000010 0x5601fbb479c5 in std::__invoke_result<void (CSound::*&)(int), CSound*&, int&>::type std::__invoke<void (CSound::*&)(int), CSound*&, int&>(void (CSound::*&)(int), CSound*&, int&) /usr/include/c++/7/bits/invoke.h:95 #11 0x5601fbb47443 in void std::_Bind<void (CSound::*(CSound*, int))(int)>::__call<void, , 0ul, 1ul>(std::tuple<>&&, std::_Index_tuple<0ul, 1ul>) /usr/include/c++/7/functional:467 0000012 0x5601fbb462ca in void std::_Bind<void (CSound::*(CSound*, int))(int)>::operator()<, void>() /usr/include/c++/7/functional:551 0000013 0x5601fbb4369f in std::_Function_handler<void (), std::_Bind<void (CSound::*(CSound*, int))(int)> >::_M_invoke(std::_Any_data const&) /usr/include/c++/7/bits/std_function.h:316 0000014 0x5601fb7c6667 in std::function<void ()>::operator()() const /usr/include/c++/7/bits/std_function.h:706 #15 0x5601fba49c01 in Threading::ThreadStart(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*) rts/System/Platform/Linux/ThreadSupport.cpp:214 #16 0x5601fba47742 in void std::__invoke_impl<void, void (*&)(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*), std::function<void ()>&, std::shared_ptr<Threading::ThreadControls>*&, Threading::ThreadControls*&>(std::__invoke_other, void (*&)(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*), std::function<void ()>&, std::shared_ptr<Threading::ThreadControls>*&, Threading::ThreadControls*&) /usr/include/c++/7/bits/invoke.h:60 #17 0x5601fba472ee in std::__invoke_result<void (*&)(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*), std::function<void ()>&, std::shared_ptr<Threading::ThreadControls>*&, Threading::ThreadControls*&>::type std::__invoke<void (*&)(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*), std::function<void ()>&, std::shared_ptr<Threading::ThreadControls>*&, Threading::ThreadControls*&>(void (*&)(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*), std::function<void ()>&, std::shared_ptr<Threading::ThreadControls>*&, Threading::ThreadControls*&) /usr/include/c++/7/bits/invoke.h:95 #18 0x5601fba46da9 in void std::_Bind<void (*(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*))(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*)>::__call<void, , 0ul, 1ul, 2ul>(std::tuple<>&&, std::_Index_tuple<0ul, 1ul, 2ul>) /usr/include/c++/7/functional:467 #19 0x5601fba46824 in void std::_Bind<void (*(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*))(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*)>::operator()<, void>() /usr/include/c++/7/functional:551 0000020 0x5601fba462a8 in void std::__invoke_impl<void, std::_Bind<void (*(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*))(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*)>>(std::__invoke_other, std::_Bind<void (*(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*))(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*)>&&) /usr/include/c++/7/bits/invoke.h:60 #21 0x5601fba45972 in std::__invoke_result<std::_Bind<void (*(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*))(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*)>>::type std::__invoke<std::_Bind<void (*(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*))(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*)>>(std::_Bind<void (*(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*))(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*)>&&) /usr/include/c++/7/bits/invoke.h:95 #22 0x5601fba47deb in decltype (__invoke((_S_declval<0ul>)())) std::thread::_Invoker<std::tuple<std::_Bind<void (*(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*))(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*)> > >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/include/c++/7/thread:234 #23 0x5601fba47d71 in std::thread::_Invoker<std::tuple<std::_Bind<void (*(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*))(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*)> > >::operator()() /usr/include/c++/7/thread:243 0000024 0x5601fba47cdb in std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::_Bind<void (*(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*))(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*, Threading::ThreadControls*)> > > >::_M_run() /usr/include/c++/7/thread:186 #25 0x7f5c6976b96e (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0xbb96e) 0000026 0x7f5c6c10f5a9 in start_thread (/lib/x86_64-linux-gnu/libpthread.so.0+0x75a9) 0000027 0x7f5c68e36cbe in __clone (/lib/x86_64-linux-gnu/libc.so.6+0xf6cbe) 0x604000088f50 is located 0 bytes inside of 42-byte region [0x604000088f50,0x604000088f7a) freed by thread T0 (spring-main) here: #0 0x7f5c6c734040 in operator delete(void*) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xdc040) #1 0x7f5c697cddce in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_assign(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x11ddce) previously allocated by thread T0 (spring-main) here: #0 0x7f5c6c733340 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xdb340) #1 0x7f5c697cddbe in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_assign(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x11ddbe) Thread T21 created by T0 (spring-main) here: #0 0x7f5c6c68f390 in __interceptor_pthread_create (/usr/lib/x86_64-linux-gnu/libasan.so.4+0x37390) #1 0x7f5c6976bbf4 in std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0xbbbf4) #2 0x5601fba44d4d in Threading::CreateNewThread(std::function<void ()>, std::shared_ptr<Threading::ThreadControls>*) rts/System/Platform/Threading.cpp:299 0000003 0x5601fbb33365 in CSound::Init() rts/System/Sound/OpenAL/Sound.cpp:123 0000004 0x5601fbaf454d in ISound::Initialize(bool, bool) rts/System/Sound/ISound.cpp:70 0000005 0x5601fb8ab8fc in SpringApp::Init() rts/System/SpringApp.cpp:275 #6 0x5601fb8b170d in SpringApp::Run() rts/System/SpringApp.cpp:800 #7 0x5601fb866e29 in Run(int, char**) rts/System/Main.cpp:43 #8 0x5601fb86753c in main rts/System/Main.cpp:92 #9 0x7f5c68d61a86 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21a86) SUMMARY: AddressSanitizer: double-free (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xdc040) in operator delete(void*) ==2874==ABORTING | ||||||||
Additional Information | 104.0.1-894-gddc8411f2 | ||||||||
Tags | No tags attached. | ||||||||
Checked infolog.txt for Errors | |||||||||
Attached Files |
|
![]() |
|
Kloot (developer) 2018-05-08 19:42 |
Fix eadbdbce91e7e885fc42e9dd0a4cefcd7ee9783c committed to develop branch: fix 0005977, repo: spring changeset id: 10230 |
Kloot (developer) 2018-05-08 19:44 |
Fix 5e3952accdd636e5a7baf3613e4b0fc76bf3c0f1 committed to maintenance branch: fix 0005977 Conflicts: rts/Game/UI/InfoConsole.cpp rts/Game/UI/InfoConsole.h, repo: spring changeset id: 10231 |
![]() |
|||
Date Modified | Username | Field | Change |
---|---|---|---|
2018-05-08 18:07 | abma | New Issue | |
2018-05-08 18:31 | abma | Summary | ==2874==ERROR: AddressSanitizer: attempting double-free on 0x604000088f50 in thread T21 on start => ==2874==ERROR: AddressSanitizer: attempting double-free on 0x604000088f50 in thread T21 at start |
2018-05-08 18:45 | Kloot | Assigned To | => Kloot |
2018-05-08 18:45 | Kloot | Status | new => assigned |
2018-05-08 19:42 | Kloot | Changeset attached | => spring develop eadbdbce |
2018-05-08 19:42 | Kloot | Note Added: 0019089 | |
2018-05-08 19:42 | Kloot | Status | assigned => resolved |
2018-05-08 19:42 | Kloot | Resolution | open => fixed |
2018-05-08 19:44 | Kloot | Changeset attached | => spring maintenance 5e3952ac |
2018-05-08 19:44 | Kloot | Note Added: 0019090 |