← Back to team overview

widelands-dev team mailing list archive

Re: [Merge] lp:~widelands-dev/widelands/new-shipping into lp:widelands

 

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.


References