Author: cazfi Date: Sat Jan 23 14:47:14 2016 New Revision: 31549 URL: http://svn.gna.org/viewcvs/freeciv?rev=31549&view=rev Log: Turned 'did_buy' and 'did_sell' to booleans in savegame3.c saves.
See patch #6749 Modified: trunk/server/savecompat.c trunk/server/savegame3.c Modified: trunk/server/savecompat.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/server/savecompat.c?rev=31549&r1=31548&r2=31549&view=diff ============================================================================== --- trunk/server/savecompat.c (original) +++ trunk/server/savecompat.c Sat Jan 23 14:47:14 2016 @@ -1402,12 +1402,36 @@ /* Idle turns */ for (plrno = 0; plrno < nplayers; plrno++) { int idlet; + int ncities; + int i; idlet = secfile_lookup_int_default(loading->file, -1, "player%d.idle_turns", plrno); if (idlet == -1) { secfile_insert_int(loading->file, 0, "player%d.idle_turns", plrno); + } + + ncities = secfile_lookup_int_default(loading->file, 0, "player%d.ncities", plrno); + + for (i = 0; i < ncities; i++) { + struct entry *did_buy = secfile_entry_lookup(loading->file, "player%d.c%d.did_buy", + plrno, i); + + /* If did buy is an integer value, make it boolean instead */ + if (did_buy != NULL && entry_type(did_buy) == ENTRY_INT) { + int val; + + entry_int_get(did_buy, &val); + + if (val) { + secfile_replace_bool(loading->file, TRUE, "player%d.c%d.did_buy", + plrno, i); + } else { + secfile_replace_bool(loading->file, FALSE, "player%d.c%d.did_buy", + plrno, i); + } + } } } } Modified: trunk/server/savegame3.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/server/savegame3.c?rev=31549&r1=31548&r2=31549&view=diff ============================================================================== --- trunk/server/savegame3.c (original) +++ trunk/server/savegame3.c Sat Jan 23 14:47:14 2016 @@ -4475,12 +4475,10 @@ sg_warn_ret_val(secfile_lookup_int(loading->file, &pcity->turn_founded, "%s.turn_founded", citystr), FALSE, "%s", secfile_error()); - sg_warn_ret_val(secfile_lookup_int(loading->file, &i, "%s.did_buy", - citystr), FALSE, "%s", secfile_error()); - pcity->did_buy = (i != 0); - - pcity->did_sell = - secfile_lookup_bool_default(loading->file, FALSE, "%s.did_sell", citystr); + sg_warn_ret_val(secfile_lookup_bool(loading->file, &pcity->did_buy, "%s.did_buy", + citystr), FALSE, "%s", secfile_error()); + sg_warn_ret_val(secfile_lookup_bool(loading->file, &pcity->did_sell, "%s.did_sell", + citystr), FALSE, "%s", secfile_error()); sg_warn_ret_val(secfile_lookup_int(loading->file, &pcity->turn_last_built, "%s.turn_last_built", citystr), @@ -4791,14 +4789,7 @@ secfile_insert_int(saving->file, pcity->server.steal, "%s.steal", buf); secfile_insert_int(saving->file, pcity->turn_founded, "%s.turn_founded", buf); - - if (pcity->turn_founded == game.info.turn) { - j = -1; /* undocumented hack */ - } else { - fc_assert(pcity->did_buy == TRUE || pcity->did_buy == FALSE); - j = pcity->did_buy ? 1 : 0; - } - secfile_insert_int(saving->file, j, "%s.did_buy", buf); + secfile_insert_bool(saving->file, pcity->did_buy, "%s.did_buy", buf); secfile_insert_bool(saving->file, pcity->did_sell, "%s.did_sell", buf); secfile_insert_int(saving->file, pcity->turn_last_built, "%s.turn_last_built", buf); _______________________________________________ Freeciv-commits mailing list Freeciv-commits@gna.org https://mail.gna.org/listinfo/freeciv-commits