Author: cazfi Date: Sat Jul 2 20:34:08 2016 New Revision: 33148 URL: http://svn.gna.org/viewcvs/freeciv?rev=33148&view=rev Log: Added macro FREECIV_DEV_SAVE_COMPAT_3_0 to be used instead of FREECIV_DEV_SAVE_COMPAT where the compatibility code is specific to 3.0 development
See patch #7331 Modified: trunk/configure.ac trunk/server/savecompat.c trunk/server/savegame3.c Modified: trunk/configure.ac URL: http://svn.gna.org/viewcvs/freeciv/trunk/configure.ac?rev=33148&r1=33147&r2=33148&view=diff ============================================================================== --- trunk/configure.ac (original) +++ trunk/configure.ac Sat Jul 2 20:34:08 2016 @@ -323,7 +323,9 @@ [dev_save_compat=$IS_DEVEL_VERSION]) AS_IF([test $dev_save_compat != 0], [AC_DEFINE([FREECIV_DEV_SAVE_COMPAT], [1], - [Development version save game compatibility])]) + [Development version save game compatibility]) + AC_DEFINE([FREECIV_DEV_SAVE_COMPAT_3_0], [1], + [Development version save game compatibility - 3.0 development])]) dnl set default values mapimg_all=auto Modified: trunk/server/savecompat.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/server/savecompat.c?rev=33148&r1=33147&r2=33148&view=diff ============================================================================== --- trunk/server/savecompat.c (original) +++ trunk/server/savecompat.c Sat Jul 2 20:34:08 2016 @@ -133,7 +133,7 @@ loading->version = secfile_lookup_int_default(loading->file, -1, "savefile.version"); -#ifdef DEBUG +#ifdef FREECIV_DEBUG sg_failure_ret(0 < loading->version, "Invalid savefile format version (%d).", loading->version); if (loading->version > compat[compat_current].version) { @@ -142,11 +142,11 @@ "Trying to load the game nevertheless ...", loading->version, compat[compat_current].version); } -#else +#else /* FREECIV_DEBUG */ sg_failure_ret(0 < loading->version && loading->version <= compat[compat_current].version, "Unknown savefile format version (%d).", loading->version); -#endif /* DEBUG */ +#endif /* FREECIV_DEBUG */ for (i = 0; i < compat_num; i++) { @@ -1309,7 +1309,7 @@ secfile_replace_int(loading->file, num_settings, "settings.set_count"); } -#ifdef FREECIV_DEV_SAVE_COMPAT +#ifdef FREECIV_DEV_SAVE_COMPAT_3_0 static const char num_chars[] = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_-+"; @@ -1333,17 +1333,21 @@ return pch - num_chars; } +#endif /* FREECIV_DEV_SAVE_COMPAT_3_0 */ /**************************************************************************** Translate savegame secfile data from earlier development version format to current one. ****************************************************************************/ +#ifdef FREECIV_DEV_SAVE_COMPAT static void compat_load_dev(struct loaddata *loading) { + int game_version; +#ifdef FREECIV_DEV_SAVE_COMPAT_3_0 bool randsaved; - int game_version; size_t diplstate_type_size; int num_settings; +#endif /* FREECIV_DEV_SAVE_COMPAT_3_0 */ /* Check status and return if not OK (sg_success != TRUE). */ sg_check_ret(); @@ -1364,6 +1368,7 @@ game_version *= 100; } +#ifdef FREECIV_DEV_SAVE_COMPAT_3_0 if (game_version < 2910000) { /* Early 3.0 development version save. */ @@ -1690,6 +1695,7 @@ } } player_slots_iterate_end; } +#endif /* FREECIV_DEV_SAVE_COMPAT_3_0 */ } #endif /* FREECIV_DEV_SAVE_COMPAT */ Modified: trunk/server/savegame3.c URL: http://svn.gna.org/viewcvs/freeciv/trunk/server/savegame3.c?rev=33148&r1=33147&r2=33148&view=diff ============================================================================== --- trunk/server/savegame3.c (original) +++ trunk/server/savegame3.c Sat Jul 2 20:34:08 2016 @@ -674,62 +674,62 @@ return ORDER_FULL_MP; case 'b': case 'B': -#ifdef FREECIV_DEV_SAVE_COMPAT +#ifdef FREECIV_DEV_SAVE_COMPAT_3_0 /* Will be upgraded with sg_order_to_action(). */ return ORDER_OLD_BUILD_CITY; -#else /* FREECIV_DEV_SAVE_COMPAT */ +#else /* FREECIV_DEV_SAVE_COMPAT_3_0 */ /* This order isn't supposed to show up in version 3 save games. */ log_error("Corrupt save game: build city ordered the old way."); return ORDER_LAST; -#endif /* FREECIV_DEV_SAVE_COMPAT */ +#endif /* FREECIV_DEV_SAVE_COMPAT_3_0 */ case 'a': case 'A': return ORDER_ACTIVITY; case 'd': case 'D': -#ifdef FREECIV_DEV_SAVE_COMPAT +#ifdef FREECIV_DEV_SAVE_COMPAT_3_0 /* Will be upgraded with sg_order_to_action(). */ return ORDER_OLD_DISBAND; -#else /* FREECIV_DEV_SAVE_COMPAT */ +#else /* FREECIV_DEV_SAVE_COMPAT_3_0 */ /* This order isn't supposed to show up in version 3 save games. */ log_error("Corrupt save game: disband unit ordered the old way."); return ORDER_LAST; -#endif /* FREECIV_DEV_SAVE_COMPAT */ +#endif /* FREECIV_DEV_SAVE_COMPAT_3_0 */ case 'u': case 'U': -#ifdef FREECIV_DEV_SAVE_COMPAT +#ifdef FREECIV_DEV_SAVE_COMPAT_3_0 /* Will be upgraded with sg_order_to_action(). */ return ORDER_OLD_BUILD_WONDER; -#else /* FREECIV_DEV_SAVE_COMPAT */ +#else /* FREECIV_DEV_SAVE_COMPAT_3_0 */ /* This order isn't supposed to show up in version 3 save games. */ log_error("Corrupt save game: help build wonder ordered the old way."); return ORDER_LAST; -#endif /* FREECIV_DEV_SAVE_COMPAT */ +#endif /* FREECIV_DEV_SAVE_COMPAT_3_0 */ case 't': case 'T': -#ifdef FREECIV_DEV_SAVE_COMPAT +#ifdef FREECIV_DEV_SAVE_COMPAT_3_0 /* Will be upgraded with sg_order_to_action(). */ return ORDER_OLD_TRADE_ROUTE; -#else /* FREECIV_DEV_SAVE_COMPAT */ +#else /* FREECIV_DEV_SAVE_COMPAT_3_0 */ /* This order isn't supposed to show up in version 3 save games. */ log_error("Corrupt save game: trade route ordered the old way."); return ORDER_LAST; -#endif /* FREECIV_DEV_SAVE_COMPAT */ +#endif /* FREECIV_DEV_SAVE_COMPAT_3_0 */ case 'h': case 'H': -#ifdef FREECIV_DEV_SAVE_COMPAT +#ifdef FREECIV_DEV_SAVE_COMPAT_3_0 /* Will be upgraded with sg_order_to_action(). */ return ORDER_OLD_HOMECITY; -#else /* FREECIV_DEV_SAVE_COMPAT */ +#else /* FREECIV_DEV_SAVE_COMPAT_3_0 */ /* This order isn't supposed to show up in version 3 save games. */ log_error("Corrupt save game: change home city ordered the old way."); return ORDER_LAST; -#endif /* FREECIV_DEV_SAVE_COMPAT */ +#endif /* FREECIV_DEV_SAVE_COMPAT_3_0 */ case 'x': case 'X': return ORDER_ACTION_MOVE; @@ -5373,9 +5373,9 @@ int order_tgt; if (orders_unitstr[j] == '\0' || dir_unitstr[j] == '\0' -#ifndef FREECIV_DEV_SAVE_COMPAT +#ifndef FREECIV_DEV_SAVE_COMPAT_3_0 || action_unitstr[j] == '\0' -#endif /* FREECIV_DEV_SAVE_COMPAT */ +#endif /* FREECIV_DEV_SAVE_COMPAT_3_0 */ || act_unitstr[j] == '\0') { log_sg("Invalid unit orders."); free_unit_orders(punit); @@ -5386,15 +5386,15 @@ order->activity = char2activity(act_unitstr[j]); order->action = ( -#ifdef FREECIV_DEV_SAVE_COMPAT +#ifdef FREECIV_DEV_SAVE_COMPAT_3_0 action_unitstr[0] == '\0' || -#endif /* FREECIV_DEV_SAVE_COMPAT */ +#endif /* FREECIV_DEV_SAVE_COMPAT_3_0 */ action_unitstr[j] == '?' ? ACTION_COUNT : char2num(action_unitstr[j])); -#ifdef FREECIV_DEV_SAVE_COMPAT +#ifdef FREECIV_DEV_SAVE_COMPAT_3_0 if (order->order != ORDER_PERFORM_ACTION && order->action == ACTION_COUNT) { /* This order may have been replaced by the perform action @@ -5409,7 +5409,7 @@ order->order = ORDER_PERFORM_ACTION; } } -#endif /* FREECIV_DEV_SAVE_COMPAT */ +#endif /* FREECIV_DEV_SAVE_COMPAT_3_0 */ if (order->order == ORDER_LAST || (order->order == ORDER_MOVE && !direction8_is_valid(order->dir)) _______________________________________________ Freeciv-commits mailing list Freeciv-commits@gna.org https://mail.gna.org/listinfo/freeciv-commits