================== WARNING: ThreadSanitizer: signal-unsafe call inside of a signal (pid=29308) #0 operator delete(void*) (libtsan.so.0+0x6f3d1) #1 __gnu_cxx::new_allocator >::frame>::deallocate(animated >::frame*, unsigned long) /usr/include/c++/7/ext/new_allocator.h:125 (wesnoth-debug+0x47efe7b) #2 std::allocator_traits >::frame> >::deallocate(std::allocator >::frame>&, animated >::frame*, unsigned long) /usr/include/c++/7/bits/alloc_traits.h:462 (wesnoth-debug+0x47eea1b) #3 std::_Vector_base >::frame, std::allocator >::frame> >::_M_deallocate(animated >::frame*, unsigned long) /usr/include/c++/7/bits/stl_vector.h:180 (wesnoth-debug+0x47ec558) #4 std::_Vector_base >::frame, std::allocator >::frame> >::~_Vector_base() /usr/include/c++/7/bits/stl_vector.h:162 (wesnoth-debug+0x47e8814) #5 std::vector >::frame, std::allocator >::frame> >::~vector() /usr/include/c++/7/bits/stl_vector.h:435 (wesnoth-debug+0x47e43f0) #6 animated >::~animated() src/animated.hpp:44 (wesnoth-debug+0x47de0e2) #7 void std::_Destroy > >(animated >*) /usr/include/c++/7/bits/stl_construct.h:98 (wesnoth-debug+0x66a21f2) #8 void std::_Destroy_aux::__destroy >*>(animated >*, animated >*) /usr/include/c++/7/bits/stl_construct.h:108 (wesnoth-debug+0x66988be) #9 void std::_Destroy >*>(animated >*, animated >*) /usr/include/c++/7/bits/stl_construct.h:137 (wesnoth-debug+0x668b535) #10 void std::_Destroy >*, animated > >(animated >*, animated >*, std::allocator > >&) /usr/include/c++/7/bits/stl_construct.h:206 (wesnoth-debug+0x667d1db) #11 std::vector >, std::allocator > > >::~vector() /usr/include/c++/7/bits/stl_vector.h:434 (wesnoth-debug+0x666ff92) #12 terrain_builder::rule_image_variant::~rule_image_variant() src/terrain/builder.hpp:163 (wesnoth-debug+0x68fce31) #13 void std::_Destroy(terrain_builder::rule_image_variant*) /usr/include/c++/7/bits/stl_construct.h:98 (wesnoth-debug+0x6915bf2) #14 void std::_Destroy_aux::__destroy(terrain_builder::rule_image_variant*, terrain_builder::rule_image_variant*) /usr/include/c++/7/bits/stl_construct.h:108 (wesnoth-debug+0x6910ca2) #15 void std::_Destroy(terrain_builder::rule_image_variant*, terrain_builder::rule_image_variant*) /usr/include/c++/7/bits/stl_construct.h:137 (wesnoth-debug+0x690a387) #16 void std::_Destroy(terrain_builder::rule_image_variant*, terrain_builder::rule_image_variant*, std::allocator&) /usr/include/c++/7/bits/stl_construct.h:206 (wesnoth-debug+0x690446d) #17 std::vector >::~vector() /usr/include/c++/7/bits/stl_vector.h:434 (wesnoth-debug+0x68fdd78) #18 terrain_builder::rule_image::~rule_image() src/terrain/builder.hpp:230 (wesnoth-debug+0x68fcd4c) #19 void std::_Destroy(terrain_builder::rule_image*) /usr/include/c++/7/bits/stl_construct.h:98 (wesnoth-debug+0x6915884) #20 void std::_Destroy_aux::__destroy(terrain_builder::rule_image*, terrain_builder::rule_image*) /usr/include/c++/7/bits/stl_construct.h:108 (wesnoth-debug+0x69107e4) #21 void std::_Destroy(terrain_builder::rule_image*, terrain_builder::rule_image*) /usr/include/c++/7/bits/stl_construct.h:137 (wesnoth-debug+0x6909aaf) #22 void std::_Destroy(terrain_builder::rule_image*, terrain_builder::rule_image*, std::allocator&) /usr/include/c++/7/bits/stl_construct.h:206 (wesnoth-debug+0x6903af3) #23 std::vector >::~vector() /usr/include/c++/7/bits/stl_vector.h:434 (wesnoth-debug+0x68fd6e4) #24 terrain_builder::terrain_constraint::~terrain_constraint() src/terrain/builder.hpp:276 (wesnoth-debug+0x691402d) #25 void std::_Destroy(terrain_builder::terrain_constraint*) /usr/include/c++/7/bits/stl_construct.h:98 (wesnoth-debug+0x6915918) #26 void std::_Destroy_aux::__destroy(terrain_builder::terrain_constraint*, terrain_builder::terrain_constraint*) /usr/include/c++/7/bits/stl_construct.h:108 (wesnoth-debug+0x69108ff) #27 void std::_Destroy(terrain_builder::terrain_constraint*, terrain_builder::terrain_constraint*) /usr/include/c++/7/bits/stl_construct.h:137 (wesnoth-debug+0x6909c9f) #28 void std::_Destroy(terrain_builder::terrain_constraint*, terrain_builder::terrain_constraint*, std::allocator&) /usr/include/c++/7/bits/stl_construct.h:206 (wesnoth-debug+0x6903de1) #29 std::vector >::~vector() /usr/include/c++/7/bits/stl_vector.h:434 (wesnoth-debug+0x68fd8a6) #30 terrain_builder::building_rule::~building_rule() src/terrain/builder.hpp:403 (wesnoth-debug+0x68fd552) #31 void __gnu_cxx::new_allocator >::destroy(terrain_builder::building_rule*) /usr/include/c++/7/ext/new_allocator.h:140 (wesnoth-debug+0x691926e) #32 void std::allocator_traits > >::destroy(std::allocator >&, terrain_builder::building_rule*) /usr/include/c++/7/bits/alloc_traits.h:487 (wesnoth-debug+0x6915b0b) #33 std::_Rb_tree, std::less, std::allocator >::_M_destroy_node(std::_Rb_tree_node*) /usr/include/c++/7/bits/stl_tree.h:650 (wesnoth-debug+0x6910afa) #34 std::_Rb_tree, std::less, std::allocator >::_M_drop_node(std::_Rb_tree_node*) /usr/include/c++/7/bits/stl_tree.h:658 (wesnoth-debug+0x690a135) #35 std::_Rb_tree, std::less, std::allocator >::_M_erase(std::_Rb_tree_node*) /usr/include/c++/7/bits/stl_tree.h:1858 (wesnoth-debug+0x690410c) #36 std::_Rb_tree, std::less, std::allocator >::_M_erase(std::_Rb_tree_node*) /usr/include/c++/7/bits/stl_tree.h:1856 (wesnoth-debug+0x69040c4) #37 std::_Rb_tree, std::less, std::allocator >::_M_erase(std::_Rb_tree_node*) /usr/include/c++/7/bits/stl_tree.h:1856 (wesnoth-debug+0x69040c4) #38 std::_Rb_tree, std::less, std::allocator >::_M_erase(std::_Rb_tree_node*) /usr/include/c++/7/bits/stl_tree.h:1856 (wesnoth-debug+0x69040c4) #39 std::_Rb_tree, std::less, std::allocator >::~_Rb_tree() /usr/include/c++/7/bits/stl_tree.h:949 (wesnoth-debug+0x68fdbb8) #40 std::multiset, std::allocator >::~multiset() /usr/include/c++/7/bits/stl_multiset.h:267 (wesnoth-debug+0x68fcc7e) #41 (libtsan.so.0+0x27f53) #42 (libtsan.so.0+0x28553) #43 (libSDL2-2.0.so.0+0xdd914) #44 gui2::dialogs::modal_dialog::show(unsigned int) src/gui/dialogs/modal_dialog.cpp:89 (wesnoth-debug+0x42a3237) #45 gui2::show_transient_message(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, bool, bool, bool) src/gui/dialogs/transient_message.cpp:70 (wesnoth-debug+0x437be71) #46 play_controller::show_objectives() const src/play_controller.cpp:1276 (wesnoth-debug+0x4927194) #47 playsingle_controller::check_objectives() src/playsingle_controller.cpp:617 (wesnoth-debug+0x5a6f090) #48 playsingle_controller::play_human_turn() src/playsingle_controller.cpp:461 (wesnoth-debug+0x5a6a28e) #49 playsingle_controller::play_side_impl() src/playsingle_controller.cpp:380 (wesnoth-debug+0x5a66521) #50 play_controller::play_side() src/play_controller.cpp:1151 (wesnoth-debug+0x492211e) #51 play_controller::play_turn() src/play_controller.cpp:1193 (wesnoth-debug+0x49240b8) #52 playsingle_controller::play_scenario_main_loop() src/playsingle_controller.cpp:175 (wesnoth-debug+0x5a5fc0d) #53 playsingle_controller::play_scenario(config const&) src/playsingle_controller.cpp:263 (wesnoth-debug+0x5a61f23) #54 campaign_controller::playsingle_scenario(end_level_data&) src/game_initialization/playcampaign.cpp:194 (wesnoth-debug+0x56774aa) #55 campaign_controller::play_game() src/game_initialization/playcampaign.cpp:281 (wesnoth-debug+0x5678a70) #56 game_launcher::launch_game(game_launcher::RELOAD_GAME_DATA) src/game_launcher.cpp:983 (wesnoth-debug+0x40f6333) #57 do_gameloop src/wesnoth.cpp:897 (wesnoth-debug+0x3ca4dcf) #58 main src/wesnoth.cpp:1143 (wesnoth-debug+0x3ca5b33) SUMMARY: ThreadSanitizer: signal-unsafe call inside of a signal (/usr/lib/x86_64-linux-gnu/libtsan.so.0+0x6f3d1) in operator delete(void*) ==================