Next one please check: https://www.magentacloud.de/share/tu4ayusx.k 
ShioCrash2.wgf

Crashes here:
Assertion failed: (old_index < nr_dests), function reorder_destinations, 
file ../src/logic/map_objects/tribes/ship.cc, line 902.

With a Debugger I found... 

Via the ReplayWriter game.cleanup_for_load(); is called
This in turn calls
void MapObject::remove(EditorGameBase& egbase) 
void PortDock::cleanup(EditorGameBase& egbase) // why doing such a fuzz for a 
cleanup?
void Ship::pop_destination(Game& game, PortDock& pd) 
void Ship::reorder_destinations(Game& game)

I assume there is some issue with the == Operator from OPtr<PortDock> 
optr(pair.first);

if (old_destinations[old_index].first == optr) {
        break; // does not happen
}

This code does not really seem robust, but I still must find out what this OPtr 
thing is.

Maybe when loading Objects ar kind of cloned by the loading so the code fails?

-- 
https://code.launchpad.net/~widelands-dev/widelands/new-shipping/+merge/371155
Your team Widelands Developers is subscribed to branch 
lp:~widelands-dev/widelands/new-shipping.

_______________________________________________
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

Reply via email to