MantisBT

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0001754VCMICampaignspublic2014-03-18 15:282023-10-10 13:47
ReporterPovelitel 
Assigned ToNordsoft 
PrioritynormalSeveritycrashReproducibilityalways
StatusclosedResolutionfixed 
PlatformOSOS Version
Product Version0.95 
Target VersionFixed in Version1.next 
Summary0001754: Custom campaign
Descriptionstart - crash
TagsNo tags attached.
Attached Files? file icon Antichrist.h3c [^] (81,009 bytes) 2014-03-18 15:28

- Relationships

-  Notes
(0004602)
Ivan (developer)
2014-03-20 18:28

Definitely not related to win/loss conditions but something in bonus system or map loading. Crash on server, short stacktrace:
0 CBonusSystemNode::actsAsBonusSourceOnly HeroBonus.cpp 810
1 CBonusSystemNode::attachTo HeroBonus.cpp 741
2 CGameState::attachArmedObjects CGameState.cpp 2811
3 CGameState::buildBonusSystemTree CGameState.cpp 2774
4 CGameState::init CGameState.cpp 812
5 CGameHandler::init CGameHandler.cpp 1089
6 CVCMIServer::initGhFromHostingConnection CVCMIServer.cpp 346
7 CVCMIServer::newGame CVCMIServer.cpp 359
8 CVCMIServer::start CVCMIServer.cpp 440
9 main CVCMIServer.cpp 615



Full stacktrace:


Thread 1 (Thread 0x7f39decdc740 (LWP 16388)):
#0 0x00007f39de25651e in CBonusSystemNode::actsAsBonusSourceOnly (this=0x0) at code/lib/HeroBonus.cpp:810
No locals.
#1 0x00007f39de256073 in CBonusSystemNode::attachTo (this=0x2808ab8, parent=0x0) at code/lib/HeroBonus.cpp:741
        __PRETTY_FUNCTION__ = "void CBonusSystemNode::attachTo(CBonusSystemNode*)"
0000002 0x00007f39ddc9ae81 in CGameState::attachArmedObjects (this=0x28faaa0) at code/lib/CGameState.cpp:2811
        armed = 0x2808a20
        obj = 0x2808a20
        __for_range = @0x243cf60: {<std::_Vector_base<ConstTransitivePtr<CGObjectInstance>, std::allocator<ConstTransitivePtr<CGObjectInstance> > >> = {_M_impl = {<std::allocator<ConstTransitivePtr<CGObjectInstance> >> = {<__gnu_cxx::new_allocator<ConstTransitivePtr<CGObjectInstance> >> = {<No data fields>}, <No data fields>}, _M_start = 0x28061f0, _M_finish = 0x2807600, _M_end_of_storage = 0x28081f0}}, <No data fields>}
        __for_begin = {_M_current = 0x28073a0}
        __for_end = {_M_current = 0x2807600}
0000003 0x00007f39ddc9ab5a in CGameState::buildBonusSystemTree (this=0x28faaa0) at code/lib/CGameState.cpp:2774
No locals.
0000004 0x00007f39ddc8c46e in CGameState::init (this=0x28faaa0, si=0x0) at code/lib/CGameState.cpp:812
        seedAfterInit = 32569
        __PRETTY_FUNCTION__ = "void CGameState::init(StartInfo*)"
0000005 0x0000000000771632 in CGameHandler::init (this=0x2442f40, si=0x7fff98c460b0) at code/server/CGameHandler.cpp:1089
No locals.
0000006 0x00000000008944be in CVCMIServer::initGhFromHostingConnection (this=0x7fff98c463c0, c=...) at code/server/CVCMIServer.cpp:346
        gh = 0x2442f40
        si = {mode = StartInfo::CAMPAIGN, difficulty = 1 '\001', playerInfos = {_M_t = {_M_impl = {<std::allocator<std::_Rb_tree_node<std::pair<PlayerColor const, PlayerSettings> > >> = {<__gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<PlayerColor const, PlayerSettings> > >> = {<No data fields>}, <No data fields>}, _M_key_compare = {<std::binary_function<PlayerColor, PlayerColor, bool>> = {<No data fields>}, <No data fields>}, _M_header = {_M_color = std::_S_red, _M_parent = 0x266cd60, _M_left = 0x266cd60, _M_right = 0x2521700}, _M_node_count = 2}}}, seedToBeUsed = 1395339862, seedPostInit = 0, mapfileChecksum = 0, turnTime = 0 '\000', mapname = {static npos = <optimized out>, _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0x1f493d8 "MAPS/ANTICHRIST"}}, mapGenOptions = {<std::__shared_ptr<CMapGenOptions, (__gnu_cxx::_Lock_policy)2>> = {_M_ptr = 0x0, _M_refcount = {_M_pi = 0x0}}, <No data fields>}, campState = {<std::__shared_ptr<CCampaignState, (__gnu_cxx::_Lock_policy)2>> = {_M_ptr = 0x26800b0, _M_refcount = {_M_pi = 0x2796f70}}, <No data fields>}}
0000007 0x000000000089460c in CVCMIServer::newGame (this=0x7fff98c463c0) at code/server/CVCMIServer.cpp:359
        c = @0x23b96e0: {<CISer<CConnection>> = {<CLoaderBase> = {<CSerializer> = {_vptr.CSerializer = 0x7f39dea09b60 <vtable for CConnection+96>, vectors = {_M_t = {_M_impl = {<std::allocator<std::_Rb_tree_node<std::pair<std::type_info const* const, boost::any> > >> = {<__gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::type_info const* const, boost::any> > >> = {<No data fields>}, <No data fields>}, _M_key_compare = {<No data fields>}, _M_header = {_M_color = std::_S_red, _M_parent = 0x0, _M_left = 0x23b9890, _M_right = 0x23b9890}, _M_node_count = 0}}}, smartVectorMembersSerialization = false, sendStackInstanceByIds = false}, _vptr.CLoaderBase = 0x7f39dea09b18 <vtable for CConnection+24>}, saving = false, loaders = {_M_t = {_M_impl = {<std::allocator<std::_Rb_tree_node<std::pair<unsigned short const, CBasicPointerLoader*> > >> = {<__gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<unsigned short const, CBasicPointerLoader*> > >> = {<No data fields>}, <No data fields>}, _M_key_compare = {<std::binary_function<unsigned short, unsigned short, bool>> = {<No data fields>}, <No data fields>}, _M_header = {_M_color = std::_S_red, _M_parent = 0x26af950, _M_left = 0x2510b10, _M_right = 0x26b0bb0}, _M_node_count = 211}}}, fileVersion = 0, reverseEndianess = false, loadedPointers = {_M_t = {_M_impl = {<std::allocator<std::_Rb_tree_node<std::pair<unsigned int const, void*> > >> = {<__gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<unsigned int const, void*> > >> = {<No data fields>}, <No data fields>}, _M_key_compare = {<std::binary_function<unsigned int, unsigned int, bool>> = {<No data fields>}, <No data fields>}, _M_header = {_M_color = std::_S_red, _M_parent = 0x26b4a50, _M_left = 0x26b4a50, _M_right = 0x26bb870}, _M_node_count = 2}}}, loadedPointersTypes = {_M_t = {_M_impl = {<std::allocator<std::_Rb_tree_node<std::pair<unsigned int const, std::type_info const*> > >> = {<__gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<unsigned int const, std::type_info const*> > >> = {<No data fields>}, <No data fields>}, _M_key_compare = {<std::binary_function<unsigned int, unsigned int, bool>> = {<No data fields>}, <No data fields>}, _M_header = {_M_color = std::_S_red, _M_parent = 0x26c5f00, _M_left = 0x26c5f00, _M_right = 0x266b210}, _M_node_count = 2}}}, loadedSharedPointers = {_M_t = {_M_impl = {<std::allocator<std::_Rb_tree_node<std::pair<void const* const, boost::any> > >> = {<__gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<void const* const, boost::any> > >> = {<No data fields>}, <No data fields>}, _M_key_compare = {<std::binary_function<void const*, void const*, bool>> = {<No data fields>}, <No data fields>}, _M_header = {_M_color = std::_S_red, _M_parent = 0x27d8bd0, _M_left = 0x27d8bd0, _M_right = 0x27d8bd0}, _M_node_count = 1}}}, smartPointerSerialization = true}, <COSer<CConnection>> = {<CSaverBase> = {_vptr.CSaverBase = 0x7f39dea09b48 <vtable for CConnection+72>}, saving = true, savers = {_M_t = {_M_impl = {<std::allocator<std::_Rb_tree_node<std::pair<unsigned short const, CBasicPointerSaver*> > >> = {<__gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<unsigned short const, CBasicPointerSaver*> > >> = {<No data fields>}, <No data fields>}, _M_key_compare = {<std::binary_function<unsigned short, unsigned short, bool>> = {<No data fields>}, <No data fields>}, _M_header = {_M_color = std::_S_red, _M_parent = 0x27af4d0, _M_left = 0x267e2d0, _M_right = 0x2678030}, _M_node_count = 211}}}, savedPointers = {_M_t = {_M_impl = {<std::allocator<std::_Rb_tree_node<std::pair<void const* const, unsigned int> > >> = {<__gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<void const* const, unsigned int> > >> = {<No data fields>}, <No data fields>}, _M_key_compare = {<std::binary_function<void const*, void const*, bool>> = {<No data fields>}, <No data fields>}, _M_header = {_M_color = std::_S_red, _M_parent = 0x0, _M_left = 0x23b9808, _M_right = 0x23b9808}, _M_node_count = 0}}}, smartPointerSerialization = true}, rmx = 0x2652a50, wmx = 0x2652e50, socket = 0x2335f90, logging = 152, connected = true, myEndianess = true, contactEndianess = true, io_service = 0x27d11f0, name = {static npos = <optimized out>, _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0x1f64f68 "VCMI 0.95 (server)"}}, connectionID = 1, handler = 0x0, receivedStop = false, sendStop = false}
        __PRETTY_FUNCTION__ = "void CVCMIServer::newGame()"
        clients = 1 '\001'
        gh = 0x7fff98c46290
        onExit = {fire = 160, f = {__gh = @0x811d59}}
0000008 0x0000000000894c5d in CVCMIServer::start (this=0x7fff98c463c0) at code/server/CVCMIServer.cpp:440
        mode = 2 '\002'
        s = 0x2335f90
        acc = {thread_info = {px = 0x0, pn = {pi_ = 0x0}}}
        sr = 0x7f39decff000
        mr = 0x23360e0
        error = {m_val = 0, m_cat = 0x7f39dc6b40d0}
0000009 0x0000000000895cfc in main (argc=2, argv=0x7fff98c464d8) at code/server/CVCMIServer.cpp:615
        io_service = {<boost::noncopyable_::noncopyable> = {<No data fields>}, service_registry_ = 0x264f270, impl_ = @0x27ce5e0}
        server = {io = 0x27d11f0, acceptor = 0x2336080, firstConnection = 0x23b96e0}
        logConfig = {filePath = {static npos = <optimized out>, _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0x1f65248 "/home/ivan/.cache/vcmi/VCMI_Server_log.txt"}}, console = 0x1f5e3a0, appendToLogFile = true}
(0006407)
SXX (administrator)
2016-02-05 00:03

Still crashing with both latest git and noncopyableBonusSystemNode.
(0007119)
SXX (administrator)
2017-07-14 14:04

Still crashing in latest develop
(0008376)
Povelitel (updater)
2022-11-18 19:43

fixed in https://github.com/vcmi/vcmi/pull/1110 [^]
(0008792)
Povelitel (updater)
2023-10-10 13:47

no longer relevant

- Issue History
Date Modified Username Field Change
2014-03-18 15:28 Povelitel New Issue
2014-03-18 15:28 Povelitel File Added: Antichrist.h3c
2014-03-19 12:45 Ivan Assigned To => Ivan
2014-03-19 12:45 Ivan Status new => assigned
2014-03-20 18:28 Ivan Note Added: 0004602
2014-03-20 18:29 Ivan Assigned To Ivan =>
2014-03-20 18:29 Ivan Status assigned => confirmed
2016-02-05 00:03 SXX Note Added: 0006407
2017-07-14 14:04 SXX Note Added: 0007119
2022-11-18 19:43 Povelitel Note Added: 0008376
2022-11-18 19:43 Povelitel Status confirmed => resolved
2022-11-18 19:43 Povelitel Fixed in Version => 1.next
2022-11-18 19:43 Povelitel Resolution open => fixed
2022-11-18 19:43 Povelitel Assigned To => Nordsoft
2023-10-10 13:47 Povelitel Note Added: 0008792
2023-10-10 13:47 Povelitel Status resolved => closed

Site | Forums | Wiki | Slack | GitHub


Copyright © 2000 - 2024 MantisBT Team
Hosting provided by DigitalOcean