MantisBT  VCMI  
View Issue Details  
ID  Project  Category  View Status  Date Submitted  Last Update  
0002384  VCMI  Other  public  20160118 18:21  20160904 08:14  
Reporter  anonymous1  
Assigned To  AVS  
Priority  normal  Severity  minor  Reproducibility  always  
Status  resolved  Resolution  fixed  
Platform  GNU/Linux 4.2.8300.fc23.x86_64  OS  Fedora  OS Version  23  
Product Version  0.98f  
Target Version  Fixed in Version  0.99  
Summary  0002384: game crash on load save game  
Description  (gdb) bt full #0 0x00007fffc8000098 in ?? () No symbol table info available. #1 0x00007ffff7849076 in CBonusSystemNode::propagateBonus (this=this@entry=0x7fffcbb45e98, b=0x7fffcbafd570) at /usr/src/debug/vcmi0.98f/lib/HeroBonus.cpp:830 lchildren = std::set with 140736605091712 elements<error reading variable: Cannot access memory at address 0x18> 0000002 0x00007ffff7849342 in CBonusSystemNode::newRedDescendant (this=this@entry=0x7fffcbafd688, descendant=0x7fffcbb45e98) at /usr/src/debug/vcmi0.98f/lib/HeroBonus.cpp:942 b = <optimized out> __for_range = @0x7fffcbafd6b0: {bonuses = std::vector of length 1, capacity 1 = {0x7fffcbafd570}, belongsToTree = false} lparents = std::set with 140736610686600 elements<error reading variable: Cannot access memory at address 0x48e8894810894813> 0000003 0x00007ffff7849439 in CBonusSystemNode::attachTo (this=0x7fffcbafd688, parent=<optimized out>, parent@entry=0x7fffcbb45e98) at /usr/src/debug/vcmi0.98f/lib/HeroBonus.cpp:735 No locals. 0000004 0x00007ffff78ba1fc in CGameState::buildGlobalTeamPlayerTree (this=this@entry=0x7fffcb5a7780) at /usr/src/debug/vcmi0.98f/lib/CGameState.cpp:2746 p = <optimized out> teamMember = <optimized out> __for_range = std::set with 1 elements = {[0] = {<BaseForID<PlayerColor, unsigned char>> = {num = 0 '\000'}, static CANNOT_DETERMINE = {<BaseForID<PlayerColor, unsigned char>> = {num = 0 '\000'}, static CANNOT_DETERMINE = <same as static member of an already seen type>, static UNFLAGGABLE = {<BaseForID<PlayerColor, unsigned char>> = {num = 0 '\000'}, static CANNOT_DETERMINE = <same as static member of an already seen type>, static UNFLAGGABLE = <same as static member of an already seen type>, static NEUTRAL = {<BaseForID<PlayerColor, unsigned char>> = {num = 0 '\000'}, static CANNOT_DETERMINE = <same as static member of an already seen type>, static UNFLAGGABLE = <same as static member of an already seen type>, static NEUTRAL = <same as static member of an already seen type>, static PLAYER_LIMIT = {<BaseForID<PlayerColor, unsigned char>> = {num = 0 '\000'}, static CANNOT_DETERMINE = <same as static member of an already seen type>, static UNFLAGGABLE = <same as static member of an already seen type>, static NEUTRAL = <same as static member of an already seen type>, static PLAYER_LIMIT = <same as static member of an already seen type>}}, static PLAYER_LIMIT = <same as static member of an already seen type>}, static NEUTRAL = <same as static member of an already seen type>, static PLAYER_LIMIT = <same as static member of an already seen type>}, static UNFLAGGABLE = <same as static member of an already seen type>, static NEUTRAL = <same as static member of an already seen type>, static PLAYER_LIMIT = <same as static member of an already seen type>}} t = 0x7fffcbb45e98 k = {first = {<BaseForID<TeamID, unsigned char>> = {num = 0 '\000'}, static NO_TEAM = {<BaseForID<TeamID, unsigned char>> = {num = 0 '\000'}, static NO_TEAM = <same as static member of an already seen type>}}, second = {<CBonusSystemNode> = {<IBonusBearer> = {_vptr.IBonusBearer = <vtable for TeamState+16>}, bonuses = { bonuses = std::vector of length 0, capacity 0, belongsToTree = false}, exportedBonuses = {bonuses = std::vector of length 0, capacity 0, belongsToTree = false}, parents = std::vector of length 1, capacity 1 = {}, children = std::vector of length 0, capacity 0, nodeType = CBonusSystemNode::TEAM, description = "", static cachingEnabled = true, cachedBonuses = {bonuses = std::vector of length 0, capacity 0, belongsToTree = false}, cachedLast = 0, static treeChanged = 84459, cachedRequests = std::map with 0 elements}, id = {<BaseForID<TeamID, unsigned char>> = {num = 0 '\000'}, static NO_TEAM = {<BaseForID<TeamID, unsigned char>> = {num = 0 '\000'}, static NO_TEAM = <same as static member of an already seen type>}}, players = std::set with 1 elements = {[0] = {<BaseForID<PlayerColor, unsigned char>> = {num = 0 '\000'}, static CANNOT_DETERMINE = {<BaseForID<PlayerColor, unsigned char>> = {num = 0 '\000'}, static CANNOT_DETERMINE = <same as static member of an already seen type>, static UNFLAGGABLE = {<BaseForID<PlayerColor, unsigned char>> = {num = 0 '\000'}, static CANNOT_DETERMINE = <same as static member of an already seen type>, static UNFLAGGABLE = <same as static member of an already seen type>, static NEUTRAL = {<BaseForID<PlayerColor, unsigned char>> = {num = 0 '\000'}, static CANNOT_DETERMINE = <same as static member of an already seen type>, static UNFLAGGABLE = <same as static member of an already seen type>, static NEUTRAL = <same as static member of an already seen type>, static PLAYER_LIMIT = {<BaseForID<PlayerColor, unsigned char>> = {num = 0 '\000'}, static CANNOT_DETERMINE = <same as static member of an already seen type>, static UNFLAGGABLE = <same as static member of an already seen type>, static NEUTRAL = <same as static member of an already seen type>, static PLAYER_LIMIT = <same as static member of an already seen type>}}, static PLAYER_LIMIT = <same as static member of an already seen type>}, static NEUTRAL = <same as static member of an already seen type>, static PLAYER_LIMIT = <same as static member of an already seen type>}, static UNFLAGGABLE = <same as static member of an already seen type>, static NEUTRAL = <same as static member of an already seen type>, static PLAYER_LIMIT = <same as static member of an already seen type>}}, fogOfWarMap = std::vector of length 72, capacity 72 = { std::vector of length 72, capacity 72 = {std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, Type <return> to continue, or q <return> to quit std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}}, std::vector of length 72, capacity 72 = {std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}}, std::vector of length 72, capacity 72 = { std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, std::vector of length 2, capacity 2 = {1 '\001', 0 '\000'}, Type <return> to continue, or q <return> to quitstd::vector of Quit (gdb)  
Steps To Reproduce  1) run vcmiclient 2) load save game Autosave_2  
Additional Information  
Tags  No tags attached.  
Relationships 
 
Attached Files  Autosave_2.tar.xz (607,264) 20160118 18:21 https://bugs.vcmi.eu/file_download.php?file_id=2429&type=bug  
Issue History  
Date Modified  Username  Field  Change  
20160118 18:21  anonymous1  New Issue  
20160118 18:21  anonymous1  File Added: Autosave_2.tar.xz  
20160118 18:34  SXX  Relationship added  duplicate of 0002314  
20160118 18:37  SXX  Note Added: 0006302  
20160904 08:14  SXX  Note Added: 0006614  
20160904 08:14  SXX  Status  new => resolved  
20160904 08:14  SXX  Fixed in Version  => 0.99  
20160904 08:14  SXX  Resolution  open => fixed  
20160904 08:14  SXX  Assigned To  => AVS 
Notes  








