Author: cazfi Date: Sun Nov 16 08:02:32 2014 New Revision: 27048 URL: http://svn.gna.org/viewcvs/freeciv?rev=27048&view=rev Log: Avoid infinite recursion in claiming base that can claim borders.
See bug #22949 Modified: trunk/server/maphand.c Modified: trunk/server/maphand.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/server/maphand.c?rev=27048&r1=27047&r2=27048&view=diff ============================================================================== --- trunk/server/maphand.c (original) +++ trunk/server/maphand.c Sun Nov 16 08:02:32 2014 @@ -1920,11 +1920,14 @@ { struct player *base_loser = base_owner(ptile); + /* This MUST be before potentially recursive call to map_claim_base(), + * so that the recursive call will get new owner == base_loser and + * abort recursion. */ + ptile->extras_owner = powner; + base_type_iterate(pbase) { map_claim_base(ptile, pbase, powner, base_loser); } base_type_iterate_end; - - ptile->extras_owner = powner; } /************************************************************************* _______________________________________________ Freeciv-commits mailing list Freeciv-commits@gna.org https://mail.gna.org/listinfo/freeciv-commits