Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

#555 SegF when enabling multi player autosave during multi player game

Latest Subversion
closed-fixed
nobody
None
5
2014-07-18
2014-02-04
Tom Reynolds
No

On this r6826 Debug build running on Ubuntu 13.10 x86_64 I reproducibly run into a segfault by carrying out the following actions:

Click on "Start game"
Click on "Multi Player"
Click on "OK"
On the player list at the bottom, set player 1 to "observer"
On the player list at the bottom, where the drop-down box says "None", select "Add AI"
Click on "Start game"
Click the menu icon in the top right corner
Click on "Options"
Click on the "Autosave" tab
Click the "Multi Player" tick box

On the next turn the game will crash.

gdb -q -n -ex "bt" -batch freeorion core

... reports:

[..]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `./freeorion'.
Program terminated with signal 11, Segmentation fault.
#0  0x00007fd0f05f6128 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#0  0x00007fd0f05f6128 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#1  0x0000000000554717 in HumanClientApp::Autosave (this=0x7fffef9adf50) at /home/tomreyn/SCM/freeorion/FreeOrion/client/human/HumanClientApp.cpp:985
#2  0x00000000005bd753 in WaitingForTurnData::react (this=0x2191830, msg=...) at /home/tomreyn/SCM/freeorion/FreeOrion/client/human/HumanClientFSM.cpp:600
#3  0x00000000005cf2e4 in boost::statechart::custom_reaction<TurnUpdate>::react<WaitingForTurnData, boost::statechart::event_base, void const*> (stt=..., evt=..., eventType=@0x7fffef9aadb8: 0x11642b0 <boost::statechart::detail::id_holder<TurnUpdate>::idProvider_>) at /usr/include/boost/statechart/custom_reaction.hpp:42
#4  0x00000000005ceea8 in boost::statechart::simple_state<WaitingForTurnData, PlayingGame, boost::mpl::list<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, (boost::statechart::history_mode)0>::local_react_impl_non_empty::local_react_impl<boost::mpl::list1<boost::statechart::custom_reaction<TurnUpdate> >, boost::statechart::simple_state<WaitingForTurnData, PlayingGame, boost::mpl::list<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, (boost::statechart::history_mode)0> > (stt=..., evt=..., eventType=0x11642b0 <boost::statechart::detail::id_holder<TurnUpdate>::idProvider_>) at /usr/include/boost/statechart/simple_state.hpp:816
#5  0x00000000005ce91f in boost::statechart::simple_state<WaitingForTurnData, PlayingGame, boost::mpl::list<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, (boost::statechart::history_mode)0>::local_react<boost::mpl::list1<boost::statechart::custom_reaction<TurnUpdate> > > (this=0x2191830, evt=..., eventType=0x11642b0 <boost::statechart::detail::id_holder<TurnUpdate>::idProvider_>) at /usr/include/boost/statechart/simple_state.hpp:851
#6  0x00000000005ce22a in boost::statechart::simple_state<WaitingForTurnData, PlayingGame, boost::mpl::list<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, (boost::statechart::history_mode)0>::local_react_impl_non_empty::local_react_impl<boost::mpl::list2<boost::statechart::custom_reaction<CombatStart>, boost::statechart::custom_reaction<TurnUpdate> >, boost::statechart::simple_state<WaitingForTurnData, PlayingGame, boost::mpl::list<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, (boost::statechart::history_mode)0> > (stt=..., evt=..., eventType=0x11642b0 <boost::statechart::detail::id_holder<TurnUpdate>::idProvider_>) at /usr/include/boost/statechart/simple_state.hpp:820
#7  0x00000000005cd987 in boost::statechart::simple_state<WaitingForTurnData, PlayingGame, boost::mpl::list<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, (boost::statechart::history_mode)0>::local_react<boost::mpl::list2<boost::statechart::custom_reaction<CombatStart>, boost::statechart::custom_reaction<TurnUpdate> > > (this=0x2191830, evt=..., eventType=0x11642b0 <boost::statechart::detail::id_holder<TurnUpdate>::idProvider_>) at /usr/include/boost/statechart/simple_state.hpp:851
#8  0x00000000005cce52 in boost::statechart::simple_state<WaitingForTurnData, PlayingGame, boost::mpl::list<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, (boost::statechart::history_mode)0>::local_react_impl_non_empty::local_react_impl<boost::mpl::list<boost::statechart::custom_reaction<SaveGame>, boost::statechart::custom_reaction<CombatStart>, boost::statechart::custom_reaction<TurnUpdate>, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, boost::statechart::simple_state<WaitingForTurnData, PlayingGame, boost::mpl::list<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, (boost::statechart::history_mode)0> > (stt=..., evt=..., eventType=0x11642b0 <boost::statechart::detail::id_holder<TurnUpdate>::idProvider_>) at /usr/include/boost/statechart/simple_state.hpp:820
#9  0x00000000005cbfd5 in boost::statechart::simple_state<WaitingForTurnData, PlayingGame, boost::mpl::list<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, (boost::statechart::history_mode)0>::local_react<boost::mpl::list<boost::statechart::custom_reaction<SaveGame>, boost::statechart::custom_reaction<CombatStart>, boost::statechart::custom_reaction<TurnUpdate>, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na> > (this=0x2191830, evt=..., eventType=0x11642b0 <boost::statechart::detail::id_holder<TurnUpdate>::idProvider_>) at /usr/include/boost/statechart/simple_state.hpp:851
#10 0x00000000005cb28b in boost::statechart::simple_state<WaitingForTurnData, PlayingGame, boost::mpl::list<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, (boost::statechart::history_mode)0>::react_impl (this=0x2191830, evt=..., eventType=0x11642b0 <boost::statechart::detail::id_holder<TurnUpdate>::idProvider_>) at /usr/include/boost/statechart/simple_state.hpp:489
#11 0x0000000000579b9f in boost::statechart::detail::send_function<boost::statechart::detail::state_base<std::allocator<void>, boost::statechart::detail::rtti_policy>, boost::statechart::event_base, void const*>::operator() (this=0x7fffef9aaf90) at /usr/include/boost/statechart/state_machine.hpp:87
#12 0x0000000000571dc0 in boost::statechart::null_exception_translator::operator()<boost::statechart::detail::send_function<boost::statechart::detail::state_base<std::allocator<void>, boost::statechart::detail::rtti_policy>, boost::statechart::event_base, void const*>, boost::statechart::state_machine<HumanClientFSM, IntroMenu, std::allocator<void>, boost::statechart::null_exception_translator>::exception_event_handler> (this=0x1e530d8, action=...) at /usr/include/boost/statechart/null_exception_translator.hpp:33
#13 0x0000000000569bd3 in boost::statechart::state_machine<HumanClientFSM, IntroMenu, std::allocator<void>, boost::statechart::null_exception_translator>::send_event (this=0x1e53080, evt=...) at /usr/include/boost/statechart/state_machine.hpp:889
#14 0x00000000005617f2 in boost::statechart::state_machine<HumanClientFSM, IntroMenu, std::allocator<void>, boost::statechart::null_exception_translator>::process_event (this=0x1e53080, evt=...) at /usr/include/boost/statechart/state_machine.hpp:275
#15 0x000000000055308f in HumanClientApp::HandleMessage (this=0x7fffef9adf50, msg=...) at /home/tomreyn/SCM/freeorion/FreeOrion/client/human/HumanClientApp.cpp:811
#16 0x0000000000552d8f in HumanClientApp::HandleSystemEvents (this=0x7fffef9adf50) at /home/tomreyn/SCM/freeorion/FreeOrion/client/human/HumanClientApp.cpp:788
#17 0x00007fd0f28b3c1e in (anonymous namespace)::OgreModalEventPump::operator() (this=0x3c66a60) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/Ogre/OgreGUI.cpp:62
#18 0x00007fd0f32531b8 in GG::Wnd::Run (this=0x7fffef9ab220) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/Wnd.cpp:845
#19 0x000000000087c388 in InGameMenu::Options (this=0x7fffef9ac810) at /home/tomreyn/SCM/freeorion/FreeOrion/UI/InGameMenu.cpp:115
#20 0x000000000087d159 in boost::_mfi::mf0<void, InGameMenu>::operator() (this=0x323e800, p=0x7fffef9ac810) at /usr/include/boost/bind/mem_fn_template.hpp:49
#21 0x000000000087cecc in boost::_bi::list1<boost::_bi::value<InGameMenu*> >::operator()<boost::_mfi::mf0<void, InGameMenu>, boost::_bi::list0> (this=0x323e810, f=..., a=...) at /usr/include/boost/bind/bind.hpp:253
#22 0x000000000087cd65 in boost::_bi::bind_t<void, boost::_mfi::mf0<void, InGameMenu>, boost::_bi::list1<boost::_bi::value<InGameMenu*> > >::operator() (this=0x323e800) at /usr/include/boost/bind/bind_template.hpp:20
#23 0x000000000087cc44 in boost::detail::function::void_function_obj_invoker0<boost::_bi::bind_t<void, boost::_mfi::mf0<void, InGameMenu>, boost::_bi::list1<boost::_bi::value<InGameMenu*> > >, void>::invoke (function_obj_ptr=...) at /usr/include/boost/function/function_template.hpp:153
#24 0x00007fd0f30b3e78 in boost::function0<void>::operator() (this=0x323e7f8) at /usr/include/boost/function/function_template.hpp:760
#25 0x00007fd0f30b21f3 in boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker::m_invoke(boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > const&, boost::signals2::detail::void_type const*) const (this=0x7fffef9ab820, connectionBody=...) at /usr/include/boost/signals2/detail/signal_template.hpp:363
#26 0x00007fd0f30afbfe in boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker::operator()(boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > const&) const (this=0x7fffef9ab820, connectionBody=...) at /usr/include/boost/signals2/detail/signal_template.hpp:345
#27 0x00007fd0f30ace53 in boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >::dereference() const (this=0x7fffef9ab5d0) at /usr/include/boost/signals2/detail/slot_call_iterator.hpp:82
#28 0x00007fd0f30a986c in boost::iterator_core_access::dereference<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > const&) (f=...) at /usr/include/boost/iterator/iterator_facade.hpp:517
#29 0x00007fd0f30a5b98 in boost::iterator_facade<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >, boost::signals2::detail::void_type, boost::single_pass_traversal_tag, boost::signals2::detail::void_type const&, long>::operator*() const (this=0x7fffef9ab5d0) at /usr/include/boost/iterator/iterator_facade.hpp:643
#30 0x00007fd0f30a1783 in boost::signals2::optional_last_value<void>::operator()<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >) const (this=0x32bd7a0, first=..., last=...) at /usr/include/boost/signals2/optional_last_value.hpp:55
#31 0x00007fd0f309ec3f in boost::signals2::detail::combiner_invoker<void>::operator()<boost::signals2::optional_last_value<void>, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >(boost::signals2::optional_last_value<void>&, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >) const (this=0x7fffef9ab68f, combiner=..., first=..., last=...) at /usr/include/boost/signals2/detail/result_type_wrapper.hpp:64
#32 0x00007fd0f309c46d in boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::operator()() (this=0x32b0930) at /usr/include/boost/signals2/detail/signal_template.hpp:246
#33 0x00007fd0f309abbc in boost::signals2::signal0<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::operator()() (this=0x3377170) at /usr/include/boost/signals2/detail/signal_template.hpp:695
#34 0x00007fd0f3094b04 in GG::Button::LClick (this=0x3376ff0, pt=..., mod_keys=...) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/Button.cpp:133
#35 0x00007fd0f3253d9e in GG::Wnd::HandleEvent (this=0x3376ff0, event=...) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/Wnd.cpp:1020
#36 0x00007fd0f314d047 in GG::GUIImpl::HandleRelease (this=0x1e528c0, mouse_button=0, pos=..., curr_ticks=116301) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/GUI.cpp:482
#37 0x00007fd0f314f176 in GG::GUI::HandleGGEvent (this=0x7fffef9aea28, event=GG::GUI::LRELEASE, key=GG::GGK_UNKNOWN, key_code_point=0, mod_keys=..., pos=..., rel=...) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/GUI.cpp:815
#38 0x00007fd0f26454d7 in OISInput::mouseReleased (this=0x7fd0e86249b8, event=..., id=OIS::MB_Left) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/Ogre/Plugins/OISInput.cpp:411
#39 0x00007fd0eee57685 in OIS::LinuxMouse::_processXEvents() () from /usr/lib/x86_64-linux-gnu/libOIS-1.3.0.so
#40 0x00007fd0eee57982 in OIS::LinuxMouse::capture() () from /usr/lib/x86_64-linux-gnu/libOIS-1.3.0.so
#41 0x00007fd0f264502b in OISInput::HandleSystemEvents (this=0x7fd0e86249b8) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/Ogre/Plugins/OISInput.cpp:355
#42 0x00007fd0f26411f1 in boost::_mfi::mf0<void, GG::OgreGUIInputPlugin>::operator() (this=0x2415800, p=0x7fd0e86249b8) at /usr/include/boost/bind/mem_fn_template.hpp:49
#43 0x00007fd0f263fa8c in boost::_bi::list1<boost::_bi::value<GG::OgreGUIInputPlugin*> >::operator()<boost::_mfi::mf0<void, GG::OgreGUIInputPlugin>, boost::_bi::list0> (this=0x2415810, f=..., a=...) at /usr/include/boost/bind/bind.hpp:253
#44 0x00007fd0f263dbb5 in boost::_bi::bind_t<void, boost::_mfi::mf0<void, GG::OgreGUIInputPlugin>, boost::_bi::list1<boost::_bi::value<GG::OgreGUIInputPlugin*> > >::operator() (this=0x2415800) at /usr/include/boost/bind/bind_template.hpp:20
#45 0x00007fd0f263be55 in boost::detail::function::void_function_obj_invoker0<boost::_bi::bind_t<void, boost::_mfi::mf0<void, GG::OgreGUIInputPlugin>, boost::_bi::list1<boost::_bi::value<GG::OgreGUIInputPlugin*> > >, void>::invoke (function_obj_ptr=...) at /usr/include/boost/function/function_template.hpp:153
#46 0x00007fd0f30b3e78 in boost::function0<void>::operator() (this=0x24157f8) at /usr/include/boost/function/function_template.hpp:760
#47 0x00007fd0f30b21f3 in boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker::m_invoke(boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > const&, boost::signals2::detail::void_type const*) const (this=0x7fffef9ac380, connectionBody=...) at /usr/include/boost/signals2/detail/signal_template.hpp:363
#48 0x00007fd0f30afbfe in boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker::operator()(boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > const&) const (this=0x7fffef9ac380, connectionBody=...) at /usr/include/boost/signals2/detail/signal_template.hpp:345
#49 0x00007fd0f30ace53 in boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >::dereference() const (this=0x7fffef9ac130) at /usr/include/boost/signals2/detail/slot_call_iterator.hpp:82
#50 0x00007fd0f30a986c in boost::iterator_core_access::dereference<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > const&) (f=...) at /usr/include/boost/iterator/iterator_facade.hpp:517
#51 0x00007fd0f30a5b98 in boost::iterator_facade<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >, boost::signals2::detail::void_type, boost::single_pass_traversal_tag, boost::signals2::detail::void_type const&, long>::operator*() const (this=0x7fffef9ac130) at /usr/include/boost/iterator/iterator_facade.hpp:643
#52 0x00007fd0f30a1783 in boost::signals2::optional_last_value<void>::operator()<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >) const (this=0x1c8ec90, first=..., last=...) at /usr/include/boost/signals2/optional_last_value.hpp:55
#53 0x00007fd0f309ec3f in boost::signals2::detail::combiner_invoker<void>::operator()<boost::signals2::optional_last_value<void>, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >(boost::signals2::optional_last_value<void>&, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >) const (this=0x7fffef9ac1ef, combiner=..., first=..., last=...) at /usr/include/boost/signals2/detail/result_type_wrapper.hpp:64
#54 0x00007fd0f309c46d in boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::operator()() (this=0x1e52ba0) at /usr/include/boost/signals2/detail/signal_template.hpp:246
#55 0x00007fd0f309abbc in boost::signals2::signal0<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::operator()() (this=0x7fffef9aea40) at /usr/include/boost/signals2/detail/signal_template.hpp:695
#56 0x00007fd0f28b46ca in GG::OgreGUI::HandleSystemEvents (this=0x7fffef9aea28) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/Ogre/OgreGUI.cpp:144
#57 0x0000000000552cef in HumanClientApp::HandleSystemEvents (this=0x7fffef9adf50) at /home/tomreyn/SCM/freeorion/FreeOrion/client/human/HumanClientApp.cpp:781
#58 0x00007fd0f28b3c1e in (anonymous namespace)::OgreModalEventPump::operator() (this=0x3245790) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/Ogre/OgreGUI.cpp:62
#59 0x00007fd0f32531b8 in GG::Wnd::Run (this=0x7fffef9ac810) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/Wnd.cpp:845
#60 0x00000000008bcc7b in MapWnd::ShowMenu (this=0x1e58690) at /home/tomreyn/SCM/freeorion/FreeOrion/UI/MapWnd.cpp:4872
#61 0x00000000008ea28f in boost::_mfi::mf0<bool, MapWnd>::operator() (this=0x1efd108, p=0x1e58690) at /usr/include/boost/bind/mem_fn_template.hpp:49
#62 0x00000000008e7b1f in boost::_bi::list1<boost::_bi::value<MapWnd*> >::operator()<bool, boost::_mfi::mf0<bool, MapWnd>, boost::_bi::list0> (this=0x1efd118, f=..., a=...) at /usr/include/boost/bind/bind.hpp:243
#63 0x00000000008e269d in boost::_bi::bind_t<bool, boost::_mfi::mf0<bool, MapWnd>, boost::_bi::list1<boost::_bi::value<MapWnd*> > >::operator() (this=0x1efd108) at /usr/include/boost/bind/bind_template.hpp:20
#64 0x00000000008d9f7d in boost::detail::function::function_obj_invoker0<boost::_bi::bind_t<bool, boost::_mfi::mf0<bool, MapWnd>, boost::_bi::list1<boost::_bi::value<MapWnd*> > >, bool>::invoke (function_obj_ptr=...) at /usr/include/boost/function/function_template.hpp:132
#65 0x000000000084a044 in boost::function0<bool>::operator() (this=0x1efd100) at /usr/include/boost/function/function_template.hpp:760
#66 0x000000000088a73a in (anonymous namespace)::BoolToVoidAdapter::operator() (this=0x1efd100) at /home/tomreyn/SCM/freeorion/FreeOrion/UI/MapWnd.cpp:90
#67 0x00000000008c35d1 in boost::detail::function::void_function_obj_invoker0<(anonymous namespace)::BoolToVoidAdapter, void>::invoke (function_obj_ptr=...) at /usr/include/boost/function/function_template.hpp:153
#68 0x00007fd0f30b3e78 in boost::function0<void>::operator() (this=0x1e88208) at /usr/include/boost/function/function_template.hpp:760
#69 0x00007fd0f30b21f3 in boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker::m_invoke(boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > const&, boost::signals2::detail::void_type const*) const (this=0x7fffef9aceb0, connectionBody=...) at /usr/include/boost/signals2/detail/signal_template.hpp:363
#70 0x00007fd0f30afbfe in boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker::operator()(boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > const&) const (this=0x7fffef9aceb0, connectionBody=...) at /usr/include/boost/signals2/detail/signal_template.hpp:345
#71 0x00007fd0f30ace53 in boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >::dereference() const (this=0x7fffef9acc60) at /usr/include/boost/signals2/detail/slot_call_iterator.hpp:82
#72 0x00007fd0f30a986c in boost::iterator_core_access::dereference<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > const&) (f=...) at /usr/include/boost/iterator/iterator_facade.hpp:517
#73 0x00007fd0f30a5b98 in boost::iterator_facade<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >, boost::signals2::detail::void_type, boost::single_pass_traversal_tag, boost::signals2::detail::void_type const&, long>::operator*() const (this=0x7fffef9acc60) at /usr/include/boost/iterator/iterator_facade.hpp:643
#74 0x00007fd0f30a1783 in boost::signals2::optional_last_value<void>::operator()<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >) const (this=0x1ea1030, first=..., last=...) at /usr/include/boost/signals2/optional_last_value.hpp:55
#75 0x00007fd0f309ec3f in boost::signals2::detail::combiner_invoker<void>::operator()<boost::signals2::optional_last_value<void>, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >(boost::signals2::optional_last_value<void>&, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >) const (this=0x7fffef9acd1f, combiner=..., first=..., last=...) at /usr/include/boost/signals2/detail/result_type_wrapper.hpp:64
#76 0x00007fd0f309c46d in boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::operator()() (this=0x1ef9850) at /usr/include/boost/signals2/detail/signal_template.hpp:246
#77 0x00007fd0f309abbc in boost::signals2::signal0<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::operator()() (this=0x1f128b0) at /usr/include/boost/signals2/detail/signal_template.hpp:695
#78 0x00007fd0f3094b04 in GG::Button::LClick (this=0x1f12730, pt=..., mod_keys=...) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/Button.cpp:133
#79 0x00007fd0f3253d9e in GG::Wnd::HandleEvent (this=0x1f12730, event=...) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/Wnd.cpp:1020
#80 0x00007fd0f314d047 in GG::GUIImpl::HandleRelease (this=0x1e528c0, mouse_button=0, pos=..., curr_ticks=69416) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/GUI.cpp:482
#81 0x00007fd0f314f176 in GG::GUI::HandleGGEvent (this=0x7fffef9aea28, event=GG::GUI::LRELEASE, key=GG::GGK_UNKNOWN, key_code_point=0, mod_keys=..., pos=..., rel=...) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/GUI.cpp:815
#82 0x00007fd0f26454d7 in OISInput::mouseReleased (this=0x7fd0e86249b8, event=..., id=OIS::MB_Left) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/Ogre/Plugins/OISInput.cpp:411
#83 0x00007fd0eee57685 in OIS::LinuxMouse::_processXEvents() () from /usr/lib/x86_64-linux-gnu/libOIS-1.3.0.so
#84 0x00007fd0eee57982 in OIS::LinuxMouse::capture() () from /usr/lib/x86_64-linux-gnu/libOIS-1.3.0.so
#85 0x00007fd0f264502b in OISInput::HandleSystemEvents (this=0x7fd0e86249b8) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/Ogre/Plugins/OISInput.cpp:355
#86 0x00007fd0f26411f1 in boost::_mfi::mf0<void, GG::OgreGUIInputPlugin>::operator() (this=0x2415800, p=0x7fd0e86249b8) at /usr/include/boost/bind/mem_fn_template.hpp:49
#87 0x00007fd0f263fa8c in boost::_bi::list1<boost::_bi::value<GG::OgreGUIInputPlugin*> >::operator()<boost::_mfi::mf0<void, GG::OgreGUIInputPlugin>, boost::_bi::list0> (this=0x2415810, f=..., a=...) at /usr/include/boost/bind/bind.hpp:253
#88 0x00007fd0f263dbb5 in boost::_bi::bind_t<void, boost::_mfi::mf0<void, GG::OgreGUIInputPlugin>, boost::_bi::list1<boost::_bi::value<GG::OgreGUIInputPlugin*> > >::operator() (this=0x2415800) at /usr/include/boost/bind/bind_template.hpp:20
#89 0x00007fd0f263be55 in boost::detail::function::void_function_obj_invoker0<boost::_bi::bind_t<void, boost::_mfi::mf0<void, GG::OgreGUIInputPlugin>, boost::_bi::list1<boost::_bi::value<GG::OgreGUIInputPlugin*> > >, void>::invoke (function_obj_ptr=...) at /usr/include/boost/function/function_template.hpp:153
#90 0x00007fd0f30b3e78 in boost::function0<void>::operator() (this=0x24157f8) at /usr/include/boost/function/function_template.hpp:760
#91 0x00007fd0f30b21f3 in boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker::m_invoke(boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > const&, boost::signals2::detail::void_type const*) const (this=0x7fffef9ada10, connectionBody=...) at /usr/include/boost/signals2/detail/signal_template.hpp:363
#92 0x00007fd0f30afbfe in boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker::operator()(boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > const&) const (this=0x7fffef9ada10, connectionBody=...) at /usr/include/boost/signals2/detail/signal_template.hpp:345
#93 0x00007fd0f30ace53 in boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >::dereference() const (this=0x7fffef9ad7c0) at /usr/include/boost/signals2/detail/slot_call_iterator.hpp:82
#94 0x00007fd0f30a986c in boost::iterator_core_access::dereference<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > const&) (f=...) at /usr/include/boost/iterator/iterator_facade.hpp:517
#95 0x00007fd0f30a5b98 in boost::iterator_facade<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >, boost::signals2::detail::void_type, boost::single_pass_traversal_tag, boost::signals2::detail::void_type const&, long>::operator*() const (this=0x7fffef9ad7c0) at /usr/include/boost/iterator/iterator_facade.hpp:643
#96 0x00007fd0f30a1783 in boost::signals2::optional_last_value<void>::operator()<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >) const (this=0x1c8ec90, first=..., last=...) at /usr/include/boost/signals2/optional_last_value.hpp:55
#97 0x00007fd0f309ec3f in boost::signals2::detail::combiner_invoker<void>::operator()<boost::signals2::optional_last_value<void>, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >(boost::signals2::optional_last_value<void>&, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot0<void, boost::function<void ()> >, boost::signals2::mutex> >) const (this=0x7fffef9ad87f, combiner=..., first=..., last=...) at /usr/include/boost/signals2/detail/result_type_wrapper.hpp:64
#98 0x00007fd0f309c46d in boost::signals2::detail::signal0_impl<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::operator()() (this=0x1e52ba0) at /usr/include/boost/signals2/detail/signal_template.hpp:246
#99 0x00007fd0f309abbc in boost::signals2::signal0<void, boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void ()>, boost::function<void (boost::signals2::connection const&)>, boost::signals2::mutex>::operator()() (this=0x7fffef9aea40) at /usr/include/boost/signals2/detail/signal_template.hpp:695
#100 0x00007fd0f28b46ca in GG::OgreGUI::HandleSystemEvents (this=0x7fffef9aea28) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/Ogre/OgreGUI.cpp:144
#101 0x0000000000552cef in HumanClientApp::HandleSystemEvents (this=0x7fffef9adf50) at /home/tomreyn/SCM/freeorion/FreeOrion/client/human/HumanClientApp.cpp:781
#102 0x00007fd0f28b3c1e in (anonymous namespace)::OgreModalEventPump::operator() (this=0x7fffef9adb60) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/Ogre/OgreGUI.cpp:62
#103 0x00007fd0f28b464e in GG::OgreGUI::Run (this=0x7fffef9aea28) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/Ogre/OgreGUI.cpp:139
#104 0x00007fd0f314e6e7 in GG::GUI::operator() (this=0x7fffef9aea28) at /home/tomreyn/SCM/freeorion/FreeOrion/GG/src/GUI.cpp:719
#105 0x00000000005a9549 in mainSetupAndRunOgre () at /home/tomreyn/SCM/freeorion/FreeOrion/client/human/chmain.cpp:340
#106 0x00000000005a5de5 in main (argc=1, argv=0x7fffef9aed18) at /home/tomreyn/SCM/freeorion/FreeOrion/client/human/chmain.cpp:88

Discussion

  • Geoff Topping
    Geoff Topping
    2014-03-23

    • status: open --> closed-fixed
     
  • Geoff Topping
    Geoff Topping
    2014-03-23

    Fixed in SVN.