In Player::rediscover_node, I found the following code: { // discover everything (above the ground) in this field field.terrains = f.field->get_terrains(); field.roads = f.field->get_roads(); field.owner = f.field->get_owned_by();
OK, owner set. Later on, we get to the neighbouring fields: { // discover the D triangle and the SW edge of the top right neighbour FCoords tr = map.tr_n(f); Field& tr_field = fields_[tr.field - &first_map_field]; if (tr_field.vision <= 1) { tr_field.terrains.d = tr.field->terrain_d(); tr_field.roads &= ~(RoadType::kMask << RoadType::kSouthWest); tr_field.roads |= RoadType::kMask << RoadType::kSouthWest & tr.field->get_roads(); } } No mention of the owner there - might that be the bug? -- https://code.launchpad.net/~widelands-dev/widelands/bug-1674243-crash_with_save_game/+merge/324301 Your team Widelands Developers is requested to review the proposed merge of lp:~widelands-dev/widelands/bug-1674243-crash_with_save_game into lp:widelands. _______________________________________________ Mailing list: https://launchpad.net/~widelands-dev Post to : widelands-dev@lists.launchpad.net Unsubscribe : https://launchpad.net/~widelands-dev More help : https://help.launchpad.net/ListHelp