Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

#311 Interface Problems After Loading Game

Latest Subversion
closed-out-of-date
Zach Laine
Interface (116)
6
2008-04-03
2007-08-28
Geoff Topping
No

If a saved game is loaded while already playing a game, the menu bar at the top of the screen is missing, and fleet move lines are drawn in the wrong place until the map is zoomed.

Discussion

  • guardian24
    guardian24
    2007-08-28

    Logged In: YES
    user_id=1536944
    Originator: NO

    Well, it seems that there is an unhandled exception in this case.
    All the menus disappear, but the game runs.
    ClientNetworking::NetworkingThread() reports twice that the networking
    thread will be terminated due to disconnect exception.

     
  • guardian24
    guardian24
    2007-08-30

    Logged In: YES
    user_id=1536944
    Originator: NO

    ClientNetworking seems to be handling all exceptions, so this is not the problem.
    My "great" debugging skills with VS Debugger shows that:
    boost:archive::detail::iserializer<boost::archive::xml_iarchive,
    ProductionQueue::Element>::load_object_data //zomg
    caused a runtime_error

     
  • Zach Laine
    Zach Laine
    2007-08-31

    Logged In: YES
    user_id=729903
    Originator: NO

    guardian24, can you show a full stack trace when you see this exception, and the line number where the exception is being thrown?

     
  • guardian24
    guardian24
    2007-08-31

    Logged In: YES
    user_id=1536944
    Originator: NO

    The exception is thrown at line 180 of the ClientNetworking.cpp, at the end ClientNetworking::DisconnectFromServer() method.
    Well, here is the call stack, but this won't be pretty. :)

    ntdll.dll!7c90eb94()
    [Frames below may be incorrect and/or missing, no symbols loaded for ntdll.dll]
    ntdll.dll!7c90d85c()
    kernel32.dll!7c8023ed()
    kernel32.dll!7c8399f3()
    kernel32.dll!7c802451()
    > freeorion.exe!ClientNetworking::DisconnectFromServer() Line 180 C++
    freeorion.exe!HumanClientApp::EndGame(bool suppress_FSM_reset=false) Line 624 C++
    freeorion.exe!HumanClientApp::EndGame() Line 287 + 0x11 bytes C++
    freeorion.exe!HumanClientApp::LoadSinglePlayerGame() Line 301 C++
    freeorion.exe!InGameMenu::Load() Line 107 C++
    freeorion.exe!boost::_mfi::mf0<void,InGameMenu>::operator()(InGameMenu * p=0x0012e8b4) Line 50 C++
    freeorion.exe!boost::_bi::list1<boost::_bi::value<InGameMenu *> >::operator()<boost::_mfi::mf0<void,InGameMenu>,boost::_bi::list0>(boost::_bi::type<void> __formal={...}, boost::_mfi::mf0<void,InGameMenu> & f={...}, boost::_bi::list0 & a={...}, boost::_bi::type<void> __formal={...}) Line 232 C++
    freeorion.exe!boost::_bi::bind_t<void,boost::_mfi::mf0<void,InGameMenu>,boost::_bi::list1<boost::_bi::value<InGameMenu *> > >::operator()() Line 21 C++
    freeorion.exe!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(boost::detail::function::function_buffer & function_obj_ptr={...}) Line 156 C++
    GiGi.dll!boost::function0<void,std::allocator<void> >::operator()() Line 692 + 0x11 bytes C++
    GiGi.dll!boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >::operator()<boost::signals::detail::connection_slot_pair>(const boost::signals::detail::connection_slot_pair & slot={...}) Line 120 C++
    GiGi.dll!boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator>::dereference() Line 61 + 0x18 bytes C++
    GiGi.dll!boost::iterator_core_access::dereference<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> >(const boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> & f={...}) Line 518 C++
    GiGi.dll!boost::iterator_facade<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator>,boost::signals::detail::unusable,boost::single_pass_traversal_tag,boost::signals::detail::unusable const &,int>::operator*() Line 635 + 0xe bytes C++
    GiGi.dll!boost::detail::postfix_increment_proxy<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> >::postfix_increment_proxy<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> >(const boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> & x={...}) Line 145 + 0xf bytes C++
    GiGi.dll!boost::operator++<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator>,boost::signals::detail::unusable,boost::single_pass_traversal_tag,boost::signals::detail::unusable const &,int>(boost::iterator_facade<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator>,boost::signals::detail::unusable,boost::single_pass_traversal_tag,boost::signals::detail::unusable const &,int> & i={...}, int __formal=0) Line 735 C++
    GiGi.dll!boost::last_value<void>::operator()<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> >(boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> first={...}, boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> last={...}) Line 43 + 0xf bytes C++
    GiGi.dll!boost::signal0<void,boost::last_value<void>,int,std::less<int>,boost::function<void __cdecl(void),std::allocator<void> > >::operator()() Line 354 + 0xad bytes C++
    GiGi.dll!GG::Button::LClick(const GG::Pt & pt={...}, GG::Flags<GG::ModKey> mod_keys={...}) Line 134 C++
    GiGi.dll!GG::Wnd::HandleEvent(const GG::WndEvent & event={...}) Line 1089 C++
    GiGi.dll!GG::GUI::HandleGGEvent(GG::GUI::EventType event=LRELEASE, GG::Key key=GGK_UNKNOWN, GG::Flags<GG::ModKey> mod_keys={...}, const GG::Pt & pos={...}, const GG::Pt & rel={...}) Line 588 + 0x3d bytes C++
    GiGiSDL.dll!SDLGUI::HandleSystemEvents() Line 241 C++
    freeorion.exe!HumanClientApp::HandleSystemEvents() Line 468 C++
    GiGi.dll!GG::ModalEventPump::operator()() Line 107 C++
    GiGi.dll!GG::Wnd::Run() Line 975 C++
    freeorion.exe!MapWnd::ShowMenu() Line 1768 C++
    freeorion.exe!boost::_mfi::mf0<bool,MapWnd>::operator()(MapWnd * p=0x028aeea0) Line 50 C++
    freeorion.exe!boost::_bi::list1<boost::_bi::value<MapWnd *> >::operator()<bool,boost::_mfi::mf0<bool,MapWnd>,boost::_bi::list0>(boost::_bi::type<bool> __formal={...}, boost::_mfi::mf0<bool,MapWnd> & f={...}, boost::_bi::list0 & a={...}, boost::_bi::type<bool> __formal={...}) Line 222 C++
    freeorion.exe!boost::_bi::bind_t<bool,boost::_mfi::mf0<bool,MapWnd>,boost::_bi::list1<boost::_bi::value<MapWnd *> > >::operator()() Line 21 C++
    freeorion.exe!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(boost::detail::function::function_buffer & function_obj_ptr={...}) Line 135 C++
    freeorion.exe!boost::function0<bool,std::allocator<void> >::operator()() Line 692 + 0x11 bytes C++
    freeorion.exe!`anonymous namespace'::BoolToVoidAdapter::operator()() Line 69 + 0xf bytes C++
    freeorion.exe!boost::detail::function::void_function_obj_invoker0<`anonymous namespace'::BoolToVoidAdapter,void>::invoke(boost::detail::function::function_buffer & function_obj_ptr={...}) Line 156 C++
    GiGi.dll!boost::function0<void,std::allocator<void> >::operator()() Line 692 + 0x11 bytes C++
    GiGi.dll!boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >::operator()<boost::signals::detail::connection_slot_pair>(const boost::signals::detail::connection_slot_pair & slot={...}) Line 120 C++
    GiGi.dll!boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator>::dereference() Line 61 + 0x18 bytes C++
    GiGi.dll!boost::iterator_core_access::dereference<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> >(const boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> & f={...}) Line 518 C++
    GiGi.dll!boost::iterator_facade<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator>,boost::signals::detail::unusable,boost::single_pass_traversal_tag,boost::signals::detail::unusable const &,int>::operator*() Line 635 + 0xe bytes C++
    GiGi.dll!boost::detail::postfix_increment_proxy<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> >::postfix_increment_proxy<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> >(const boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> & x={...}) Line 145 + 0xf bytes C++
    GiGi.dll!boost::operator++<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator>,boost::signals::detail::unusable,boost::single_pass_traversal_tag,boost::signals::detail::unusable const &,int>(boost::iterator_facade<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator>,boost::signals::detail::unusable,boost::single_pass_traversal_tag,boost::signals::detail::unusable const &,int> & i={...}, int __formal=0) Line 735 C++
    GiGi.dll!boost::last_value<void>::operator()<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> >(boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> first={...}, boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> last={...}) Line 43 + 0xf bytes C++
    GiGi.dll!boost::signal0<void,boost::last_value<void>,int,std::less<int>,boost::function<void __cdecl(void),std::allocator<void> > >::operator()() Line 354 + 0xad bytes C++
    GiGi.dll!GG::Button::LClick(const GG::Pt & pt={...}, GG::Flags<GG::ModKey> mod_keys={...}) Line 134 C++
    GiGi.dll!GG::Wnd::HandleEvent(const GG::WndEvent & event={...}) Line 1089 C++
    GiGi.dll!GG::GUI::HandleGGEvent(GG::GUI::EventType event=LRELEASE, GG::Key key=GGK_UNKNOWN, GG::Flags<GG::ModKey> mod_keys={...}, const GG::Pt & pos={...}, const GG::Pt & rel={...}) Line 588 + 0x3d bytes C++
    GiGiSDL.dll!SDLGUI::HandleSystemEvents() Line 241 C++
    freeorion.exe!HumanClientApp::HandleSystemEvents() Line 468 C++
    GiGi.dll!GG::EventPump::operator()() Line 92 C++
    GiGiSDL.dll!SDLGUI::Run() Line 282 C++
    GiGi.dll!GG::GUI::operator()() Line 338 C++
    GiGiSDL.dll!SDLGUI::operator()() Line 84 C++
    freeorion.exe!SDL_main(int argc=1, char * * argv=0x0203da50) Line 75 + 0xc bytes C++
    freeorion.exe!_main() + 0xd9 bytes C
    freeorion.exe!__tmainCRTStartup() Line 597 + 0x17 bytes C
    kernel32.dll!7c816d4f()
    kernel32.dll!7c8399f3()
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536751, const void * __formal=0x0066006f) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536751, const void * __formal=0x0066006f) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=2228285, const void * __formal=0x002e0031) Line 152 C++
    freeorion.exe!boost::iterator_facade<boost::filesystem::basic_path<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,boost::filesystem::path_traits>::iterator,std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,boost::bidirectional_traversal_tag,std::basic_string<char,std::char_traits<char>,std::allocator<char> > const &,int>::operator*() Line 635 + 0x8 bytes C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536751, const void * __formal=0x0066006f) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536751, const void * __formal=0x0066006f) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7602258, const void * __formal=0x00000070) Line 152 C++
    freeorion.exe!boost::archive::detail::iserializer<boost::archive::xml_iarchive,ProductionQueue::Element>::load_object_data(boost::archive::detail::basic_iarchive & ar={...}, void * x=0x0066006f, const unsigned int file_version=3014772) Line 162 + 0x11 bytes C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7602290, const void * __formal=0x002c0070) Line 152 C++
    freeorion.exe!boost::archive::detail::iserializer<boost::archive::xml_iarchive,ProductionQueue::Element>::load_object_data(boost::archive::detail::basic_iarchive & ar={...}, void * x=0x002e0035, const unsigned int file_version=3014706) Line 162 + 0x11 bytes C++
    freeorion.exe!boost::iterator_facade<boost::filesystem::basic_path<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,boost::filesystem::path_traits>::iterator,std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,boost::bidirectional_traversal_tag,std::basic_string<char,std::char_traits<char>,std::allocator<char> > const &,int>::operator*() Line 635 + 0x8 bytes C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7602258, const void * __formal=0x005f0070) Line 152 C++
    freeorion.exe!boost::archive::detail::iserializer<boost::archive::xml_iarchive,ProductionQueue::Element>::load_object_data(boost::archive::detail::basic_iarchive & ar={...}, void * x=0x0066006f, const unsigned int file_version=3014772) Line 162 + 0x11 bytes C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7602258, const void * __formal=0x005f0070) Line 152 C++
    freeorion.exe!boost::archive::detail::iserializer<boost::archive::xml_iarchive,ProductionQueue::Element>::load_object_data(boost::archive::detail::basic_iarchive & ar={...}, void * x=0x0066006f, const unsigned int file_version=3014772) Line 162 + 0x11 bytes C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536751, const void * __formal=0x0066006f) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=2228285, const void * __formal=0x002e0035) Line 152 C++
    freeorion.exe!boost::iterator_facade<boost::filesystem::basic_path<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,boost::filesystem::path_traits>::iterator,std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,boost::bidirectional_traversal_tag,std::basic_string<char,std::char_traits<char>,std::allocator<char> > const &,int>::operator*() Line 635 + 0x8 bytes C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536751, const void * __formal=0x0066006f) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536751, const void * __formal=0x0066006f) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536751, const void * __formal=0x0066006f) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=2228285, const void * __formal=0x002e0035) Line 152 C++
    freeorion.exe!boost::iterator_facade<boost::filesystem::basic_path<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,boost::filesystem::path_traits>::iterator,std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,boost::bidirectional_traversal_tag,std::basic_string<char,std::char_traits<char>,std::allocator<char> > const &,int>::operator*() Line 635 + 0x8 bytes C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536751, const void * __formal=0x0066006f) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7471213, const void * __formal=0x00700074) Line 152 C++
    freeorion.exe!std::_Tree<std::_Tmap_traits<enum BuildType,CUIButton *,std::less<enum BuildType>,std::allocator<std::pair<enum BuildType const ,CUIButton *> >,0> >::insert(std::_Tree<std::_Tmap_traits<enum BuildType,CUIButton *,std::less<enum BuildType>,std::allocator<std::pair<enum BuildType const ,CUIButton *> >,0> >::iterator _Where=(139299664,0xee1ee851 {m_border_color={...} m_border_thick=??? }), const std::pair<enum BuildType const ,CUIButton *> & _Val=(1170671595,0x000001f8 {m_border_color={...} m_border_thick=??? })) Line 708 + 0x47 bytes C++
    freeorion.exe!std::_Tree<std::_Tmap_traits<enum BuildType,CUIButton *,std::less<enum BuildType>,std::allocator<std::pair<enum BuildType const ,CUIButton *> >,0> >::insert(std::_Tree<std::_Tmap_traits<enum BuildType,CUIButton *,std::less<enum BuildType>,std::allocator<std::pair<enum BuildType const ,CUIButton *> >,0> >::iterator _Where=(-1034033781,0xcccc0004 {m_border_color={...} m_border_thick=??? }), const std::pair<enum BuildType const ,CUIButton *> & _Val=(...,...) Line 708 + 0x47 bytes C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536741, const void * __formal=0x0064002e) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7602290, const void * __formal=0x002e0070) Line 152 C++
    freeorion.exe!boost::archive::detail::iserializer<boost::archive::xml_iarchive,ProductionQueue::Element>::load_object_data(boost::archive::detail::basic_iarchive & ar={...}, void * x=0xdae8088b, const unsigned int file_version=2348801503) Line 162 + 0x11 bytes C++
    e80a8bf8()

     
  • Zach Laine
    Zach Laine
    2007-09-01

    Logged In: YES
    user_id=729903
    Originator: NO

    The stack trace you have posted here makes no sense. The exception you show could not have come from that location, and in fact, it's not even the client (freeorion.exe) that is crashing, but the server (freeoriond.exe).

     
  • guardian24
    guardian24
    2007-09-01

    Logged In: YES
    user_id=1536944
    Originator: NO

    Somehow I couldnt reproduce the previous call stack, instead this is what I get since then:

    kernel32.dll!7c81eb33()
    [Frames below may be incorrect and/or missing, no symbols loaded for kernel32.dll]
    kernel32.dll!7c81eb33()
    > freeorion.exe!std::runtime_error::runtime_error(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & _Message={...}) Line 155 C++
    msvcp80.dll!std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string<char,std::char_traits<char>,std::allocator<char> >() Line 576 C++
    freeorion.exe!boost::system::system_error::system_error(boost::system::error_code ec={...}) Line 29 + 0x7e bytes C++
    0012e38c()
    ntdll.dll!7c9167a4()
    atioglxx.dll!69375e53()
    atioglxx.dll!6915cc68()
    atioglxx.dll!6937618a()
    atioglxx.dll!69341a74()
    atioglxx.dll!6915d1f5()
    atioglxx.dll!69355c60()
    ntdll.dll!7c9105c8()
    GiGi.dll!std::less<GG::ModKey>::operator()(const GG::ModKey & _Left={...}, const GG::ModKey & _Right={...}) Line 144 C++
    GiGi.dll!std::_Tree<std::_Tset_traits<GG::ModKey,std::less<GG::ModKey>,std::allocator<GG::ModKey>,0> >::find(const GG::ModKey & _Keyval={...}) Line 974 + 0x3a bytes C++
    GiGi.dll!GG::FlagSpec<GG::ModKey>::find(GG::ModKey flag={...}) Line 175 + 0x17 bytes C++
    0012e6a8()
    GiGiSDL.dll!GG::Flags<GG::ModKey>::Flags<GG::ModKey>(GG::ModKey flag={...}) Line 279 + 0x12 bytes C++
    GiGiSDL.dll!`anonymous namespace'::GetSDLModKeys() Line 47 C++
    0012e7d0()
    kernel32.dll!7c80aa7f()
    freeorion.exe!HumanClientApp::HandleSystemEvents() Line 468 C++
    GiGi.dll!GG::ModalEventPump::operator()() Line 107 C++
    GiGi.dll!GG::Wnd::Run() Line 975 C++
    freeorion.exe!MapWnd::ShowMenu() Line 1768 C++
    freeorion.exe!boost::_mfi::mf0<bool,MapWnd>::operator()(MapWnd * p=0x028b2bd8) Line 50 C++
    freeorion.exe!boost::_bi::list1<boost::_bi::value<MapWnd *> >::operator()<bool,boost::_mfi::mf0<bool,MapWnd>,boost::_bi::list0>(boost::_bi::type<bool> __formal={...}, boost::_mfi::mf0<bool,MapWnd> & f={...}, boost::_bi::list0 & a={...}, boost::_bi::type<bool> __formal={...}) Line 222 C++
    freeorion.exe!boost::_bi::bind_t<bool,boost::_mfi::mf0<bool,MapWnd>,boost::_bi::list1<boost::_bi::value<MapWnd *> > >::operator()() Line 21 C++
    freeorion.exe!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(boost::detail::function::function_buffer & function_obj_ptr={...}) Line 135 C++
    freeorion.exe!boost::function0<bool,std::allocator<void> >::operator()() Line 692 + 0x11 bytes C++
    freeorion.exe!`anonymous namespace'::BoolToVoidAdapter::operator()() Line 69 + 0xf bytes C++
    freeorion.exe!boost::detail::function::void_function_obj_invoker0<`anonymous namespace'::BoolToVoidAdapter,void>::invoke(boost::detail::function::function_buffer & function_obj_ptr={...}) Line 156 C++
    GiGi.dll!boost::function0<void,std::allocator<void> >::operator()() Line 692 + 0x11 bytes C++
    GiGi.dll!boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >::operator()<boost::signals::detail::connection_slot_pair>(const boost::signals::detail::connection_slot_pair & slot={...}) Line 120 C++
    GiGi.dll!boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator>::dereference() Line 61 + 0x18 bytes C++
    GiGi.dll!boost::iterator_core_access::dereference<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> >(const boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> & f={...}) Line 518 C++
    GiGi.dll!boost::iterator_facade<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator>,boost::signals::detail::unusable,boost::single_pass_traversal_tag,boost::signals::detail::unusable const &,int>::operator*() Line 635 + 0xe bytes C++
    GiGi.dll!boost::detail::postfix_increment_proxy<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> >::postfix_increment_proxy<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> >(const boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> & x={...}) Line 145 + 0xf bytes C++
    GiGi.dll!boost::operator++<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator>,boost::signals::detail::unusable,boost::single_pass_traversal_tag,boost::signals::detail::unusable const &,int>(boost::iterator_facade<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator>,boost::signals::detail::unusable,boost::single_pass_traversal_tag,boost::signals::detail::unusable const &,int> & i={...}, int __formal=0) Line 735 C++
    GiGi.dll!boost::last_value<void>::operator()<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> >(boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> first={...}, boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound0<void>::caller<boost::function<void __cdecl(void),std::allocator<void> > >,boost::signals::detail::named_slot_map_iterator> last={...}) Line 43 + 0xf bytes C++
    GiGi.dll!boost::signal0<void,boost::last_value<void>,int,std::less<int>,boost::function<void __cdecl(void),std::allocator<void> > >::operator()() Line 354 + 0xad bytes C++
    GiGi.dll!GG::Button::LClick(const GG::Pt & pt={...}, GG::Flags<GG::ModKey> mod_keys={...}) Line 134 C++
    GiGi.dll!GG::Wnd::HandleEvent(const GG::WndEvent & event={...}) Line 1089 C++
    GiGi.dll!GG::GUI::HandleGGEvent(GG::GUI::EventType event=LRELEASE, GG::Key key=GGK_UNKNOWN, GG::Flags<GG::ModKey> mod_keys={...}, const GG::Pt & pos={...}, const GG::Pt & rel={...}) Line 588 + 0x3d bytes C++
    GiGiSDL.dll!SDLGUI::HandleSystemEvents() Line 241 C++
    freeorion.exe!HumanClientApp::HandleSystemEvents() Line 468 C++
    GiGi.dll!GG::EventPump::operator()() Line 92 C++
    GiGiSDL.dll!SDLGUI::Run() Line 282 C++
    GiGi.dll!GG::GUI::operator()() Line 338 C++
    GiGiSDL.dll!SDLGUI::operator()() Line 84 C++
    freeorion.exe!SDL_main(int argc=1, char * * argv=0x0203da70) Line 75 + 0xc bytes C++
    freeorion.exe!_main() + 0xd9 bytes C
    freeorion.exe!__tmainCRTStartup() Line 597 + 0x17 bytes C
    kernel32.dll!7c816d4f()
    kernel32.dll!7c8399f3()
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536751, const void * __formal=0x0066006f) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536751, const void * __formal=0x0066006f) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=6619248, const void * __formal=0x0022003d) Line 152 C++
    freeorion.exe!boost::slot<boost::function<void __cdecl(int,GG::ListBox::Row *),std::allocator<void> > >::slot<boost::function<void __cdecl(int,GG::ListBox::Row *),std::allocator<void> > ><boost::_bi::bind_t<void,boost::_mfi::mf2<void,BuildDesignatorWnd::BuildSelector,int,GG::ListBox::Row *>,boost::_bi::list3<boost::_bi::value<BuildDesignatorWnd::BuildSelector *>,boost::arg<1>,boost::arg<2> > > >(const boost::_bi::bind_t<void,boost::_mfi::mf2<void,BuildDesignatorWnd::BuildSelector,int,GG::ListBox::Row *>,boost::_bi::list3<boost::_bi::value<BuildDesignatorWnd::BuildSelector *>,boost::arg<1>,boost::arg<2> > > & f={...}) Line 113 + 0x35 bytes C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536751, const void * __formal=0x0066006f) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536751, const void * __formal=0x0066006f) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7602258, const void * __formal=0x00000070) Line 152 C++
    freeorion.exe!boost::archive::detail::iserializer<boost::archive::xml_iarchive,ProductionQueue::Element>::load_object_data(boost::archive::detail::basic_iarchive & ar={...}, void * x=0x0066006f, const unsigned int file_version=3014772) Line 162 + 0x11 bytes C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7602290, const void * __formal=0x002c0070) Line 152 C++
    freeorion.exe!boost::archive::detail::iserializer<boost::archive::xml_iarchive,ProductionQueue::Element>::load_object_data(boost::archive::detail::basic_iarchive & ar={...}, void * x=0x0022003d, const unsigned int file_version=6881399) Line 162 + 0x11 bytes C++
    freeorion.exe!boost::slot<boost::function<void __cdecl(int,GG::ListBox::Row *),std::allocator<void> > >::slot<boost::function<void __cdecl(int,GG::ListBox::Row *),std::allocator<void> > ><boost::_bi::bind_t<void,boost::_mfi::mf2<void,BuildDesignatorWnd::BuildSelector,int,GG::ListBox::Row *>,boost::_bi::list3<boost::_bi::value<BuildDesignatorWnd::BuildSelector *>,boost::arg<1>,boost::arg<2> > > >(const boost::_bi::bind_t<void,boost::_mfi::mf2<void,BuildDesignatorWnd::BuildSelector,int,GG::ListBox::Row *>,boost::_bi::list3<boost::_bi::value<BuildDesignatorWnd::BuildSelector *>,boost::arg<1>,boost::arg<2> > > & f={...}) Line 113 + 0x35 bytes C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7602258, const void * __formal=0x005f0070) Line 152 C++
    freeorion.exe!boost::archive::detail::iserializer<boost::archive::xml_iarchive,ProductionQueue::Element>::load_object_data(boost::archive::detail::basic_iarchive & ar={...}, void * x=0x0066006f, const unsigned int file_version=3014772) Line 162 + 0x11 bytes C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7602258, const void * __formal=0x005f0070) Line 152 C++
    freeorion.exe!boost::archive::detail::iserializer<boost::archive::xml_iarchive,ProductionQueue::Element>::load_object_data(boost::archive::detail::basic_iarchive & ar={...}, void * x=0x0066006f, const unsigned int file_version=3014772) Line 162 + 0x11 bytes C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536751, const void * __formal=0x0066006f) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=6619248, const void * __formal=0x0022003d) Line 152 C++
    freeorion.exe!boost::slot<boost::function<void __cdecl(int,GG::ListBox::Row *),std::allocator<void> > >::slot<boost::function<void __cdecl(int,GG::ListBox::Row *),std::allocator<void> > ><boost::_bi::bind_t<void,boost::_mfi::mf2<void,BuildDesignatorWnd::BuildSelector,int,GG::ListBox::Row *>,boost::_bi::list3<boost::_bi::value<BuildDesignatorWnd::BuildSelector *>,boost::arg<1>,boost::arg<2> > > >(const boost::_bi::bind_t<void,boost::_mfi::mf2<void,BuildDesignatorWnd::BuildSelector,int,GG::ListBox::Row *>,boost::_bi::list3<boost::_bi::value<BuildDesignatorWnd::BuildSelector *>,boost::arg<1>,boost::arg<2> > > & f={...}) Line 113 + 0x35 bytes C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536751, const void * __formal=0x0066006f) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536751, const void * __formal=0x0066006f) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536751, const void * __formal=0x0066006f) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=6619248, const void * __formal=0x0022003d) Line 152 C++
    freeorion.exe!boost::slot<boost::function<void __cdecl(int,GG::ListBox::Row *),std::allocator<void> > >::slot<boost::function<void __cdecl(int,GG::ListBox::Row *),std::allocator<void> > ><boost::_bi::bind_t<void,boost::_mfi::mf2<void,BuildDesignatorWnd::BuildSelector,int,GG::ListBox::Row *>,boost::_bi::list3<boost::_bi::value<BuildDesignatorWnd::BuildSelector *>,boost::arg<1>,boost::arg<2> > > >(const boost::_bi::bind_t<void,boost::_mfi::mf2<void,BuildDesignatorWnd::BuildSelector,int,GG::ListBox::Row *>,boost::_bi::list3<boost::_bi::value<BuildDesignatorWnd::BuildSelector *>,boost::arg<1>,boost::arg<2> > > & f={...}) Line 113 + 0x35 bytes C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536751, const void * __formal=0x0066006f) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536741, const void * __formal=0x0064002e) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7536741, const void * __formal=0x0064002e) Line 152 C++
    freeorion.exe!std::allocator<IntroMenuIdle>::allocate(unsigned int _Count=7602290, const void * __formal=0x002e0070) Line 152 C++
    freeorion.exe!boost::archive::detail::iserializer<boost::archive::xml_iarchive,ProductionQueue::Element>::load_object_data(boost::archive::detail::basic_iarchive & ar={...}, void * x=0xdae8088b, const unsigned int file_version=2348801503) Line 162 + 0x11 bytes C++
    e80a8bf8()

     
  • Zach Laine
    Zach Laine
    2007-09-01

    Logged In: YES
    user_id=729903
    Originator: NO

    This still makes no sense. Are you seeing a crash in freeorion.exe, or are you seeing the behavior in this bug report, that freeorion.exe keeps rnning, but is missing its menu? If it's the later, report it as a separate bug, because the exception you are showing here cannot be causing freeoriond.exe (note the *d*) to crash. It is a separate program.

     
  • Geoff Topping
    Geoff Topping
    2007-09-01

    Logged In: YES
    user_id=913462
    Originator: YES

    1188678278 ERROR : ClientNetworking::NetworkingThread() : Networking thread will be terminated due to disconnec
    t exception "The I/O operation has been aborted because of either a thread exit or an application request."

    I see networking exception messages of this sort every execution. They appear to be normal operation, occuring when resigning and quitting the program normally, so I didn't report them. They don't seem to be related to this bug.

     
  • guardian24
    guardian24
    2007-09-01

    Logged In: YES
    user_id=1536944
    Originator: NO

    Maybe i have no clue, but when I attach to freeoriond.exe process, the game works smoothly.
    When I dont attach at all to any of the processes, and the exception occurs, and in response I
    try to launch the VS debugger, it just cant show anything.
    The only way to trace anything was to attach to freeorion.exe after I started it and then
    trigger the bug by loading a game while a game had been under way already.

     
  • guardian24
    guardian24
    2007-09-12

    Logged In: YES
    user_id=1536944
    Originator: NO

    Well, after these copy-pasting sessions, I have some new data on this.
    I changed serialization of the struct SaveGameUIData::NebulaData,
    because of the nebula flipping-rotating request.
    Saving or loading the game seems to work, but this problem with loading
    a game while a game is already running persists.
    But, I have a new error message:
    The thread 'std::_Tree<std::_Tmap_traits<enum MeterType,std::vector<Universe::EffectAccountingInfo,std::allocator<Universe::EffectAccountingInfo> >,
    std::less<enum MeterType>,std::allocator<std::pair<enum MeterType const ,
    std::vector<Universe::EffectAccountingInfo,std::allocator<Universe::EffectAccountingInfo> > > >,0> >
    ::_Tidy' (0xbdc) has exited with code 0 (0x0).
    This is all the info I could get about it.

     
  • iLess
    iLess
    2007-11-21

    Logged In: YES
    user_id=1111948
    Originator: NO

    has this bug already been resolved in rc6? i cannot reproduce it

     
  • Geoff Topping
    Geoff Topping
    2008-01-22

    Logged In: YES
    user_id=913462
    Originator: YES

    This hasn't been resolved. It still happens with SVN version on my machine (Win XP) as of this writing.

    A video of the process is here:

    http://home.cogeco.ca/~toppingwebspace1/FreeOrion_bug_1783342.zip

    I start a new game, then load a saved game. I then click on a fleet icon, which crashes the program (the cursor can't be seen, so this might not have been clear from the video).

     
  • Zach Laine
    Zach Laine
    2008-02-09

    Logged In: YES
    user_id=729903
    Originator: NO

    I believe this is fixed. Please retest and indicate if it is not fixed.

     
  • Zach Laine
    Zach Laine
    2008-02-09

    • assigned_to: nobody --> tzlaine
    • status: open --> pending-fixed
     
  • Geoff Topping
    Geoff Topping
    2008-02-10

    • priority: 8 --> 6
    • status: pending-fixed --> open
     
  • Geoff Topping
    Geoff Topping
    2008-02-10

    Logged In: YES
    user_id=913462
    Originator: YES

    Still happens in SVN

     
  • Zach Laine
    Zach Laine
    2008-04-03

    Logged In: YES
    user_id=729903
    Originator: NO

    Paging Geoff. Is this bug still cropping up? Can you produce a save file that exhibits the problem?

     
  • Geoff Topping
    Geoff Topping
    2008-04-03

    Logged In: YES
    user_id=913462
    Originator: YES

    This seems to be fixed / gone in my latest build.

     
  • Geoff Topping
    Geoff Topping
    2008-04-03

    • status: open --> closed-out-of-date