Author: cazfi
Date: Fri Jan  8 08:53:25 2016
New Revision: 31408

URL: http://svn.gna.org/viewcvs/freeciv?rev=31408&view=rev
Log:
Moved version number of the freeciv that created the save from [game] to 
[scenario]
for fast lookup.

See patch #6756

Modified:
    trunk/data/scenarios/british-isles-85x80-v2.80.sav
    trunk/data/scenarios/earth-160x90-v2.sav
    trunk/data/scenarios/earth-80x50-v3.sav
    trunk/data/scenarios/europe-200x100-v2.sav
    trunk/data/scenarios/france-140x90-v2.sav
    trunk/data/scenarios/hagworld-120x60-v1.2.sav
    trunk/data/scenarios/iberian-peninsula-136x100-v1.0.sav
    trunk/data/scenarios/italy-100x100-v1.5.sav
    trunk/data/scenarios/japan-88x100-v1.3.sav
    trunk/data/scenarios/north_america_116x100-v1.2.sav
    trunk/data/scenarios/tileset-demo.sav
    trunk/data/scenarios/tutorial.sav
    trunk/server/savecompat.c
    trunk/server/savegame3.c

Modified: trunk/data/scenarios/british-isles-85x80-v2.80.sav
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/data/scenarios/british-isles-85x80-v2.80.sav?rev=31408&r1=31407&r2=31408&view=diff
==============================================================================
--- trunk/data/scenarios/british-isles-85x80-v2.80.sav  (original)
+++ trunk/data/scenarios/british-isles-85x80-v2.80.sav  Fri Jan  8 08:53:25 2016
@@ -1,6 +1,7 @@
 
 [scenario]
 is_scenario=TRUE
+game_version=20599
 name=_("British Isles (classic/medium)")
 description=_("Classic-style 85x80 map of the British Isles.")
 save_random=FALSE

Modified: trunk/data/scenarios/earth-160x90-v2.sav
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/data/scenarios/earth-160x90-v2.sav?rev=31408&r1=31407&r2=31408&view=diff
==============================================================================
--- trunk/data/scenarios/earth-160x90-v2.sav    (original)
+++ trunk/data/scenarios/earth-160x90-v2.sav    Fri Jan  8 08:53:25 2016
@@ -1,6 +1,7 @@
 
 [scenario]
 is_scenario=TRUE
+game_version=20599
 name=_("Earth (classic/large)")
 description=_("Classic-style 160x90 map of the Earth.")
 save_random=FALSE

Modified: trunk/data/scenarios/earth-80x50-v3.sav
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/data/scenarios/earth-80x50-v3.sav?rev=31408&r1=31407&r2=31408&view=diff
==============================================================================
--- trunk/data/scenarios/earth-80x50-v3.sav     (original)
+++ trunk/data/scenarios/earth-80x50-v3.sav     Fri Jan  8 08:53:25 2016
@@ -1,6 +1,7 @@
 
 [scenario]
 is_scenario=TRUE
+game_version=20599
 name=_("Earth (classic/small)")
 description=_("Classic-style 80x50 map of the Earth.")
 save_random=FALSE

Modified: trunk/data/scenarios/europe-200x100-v2.sav
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/data/scenarios/europe-200x100-v2.sav?rev=31408&r1=31407&r2=31408&view=diff
==============================================================================
--- trunk/data/scenarios/europe-200x100-v2.sav  (original)
+++ trunk/data/scenarios/europe-200x100-v2.sav  Fri Jan  8 08:53:25 2016
@@ -1,6 +1,7 @@
 
 [scenario]
 is_scenario=TRUE
+game_version=20599
 name=_("Europe (classic/giant)")
 description=_("Classic-style 200x100 map of Europe.")
 players=FALSE

Modified: trunk/data/scenarios/france-140x90-v2.sav
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/data/scenarios/france-140x90-v2.sav?rev=31408&r1=31407&r2=31408&view=diff
==============================================================================
--- trunk/data/scenarios/france-140x90-v2.sav   (original)
+++ trunk/data/scenarios/france-140x90-v2.sav   Fri Jan  8 08:53:25 2016
@@ -1,6 +1,7 @@
 
 [scenario]
 is_scenario=TRUE
+game_version=20599
 name=_("France (classic/large)")
 description=_("Classic-style 140x90 map of France.")
 save_random=FALSE

Modified: trunk/data/scenarios/hagworld-120x60-v1.2.sav
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/data/scenarios/hagworld-120x60-v1.2.sav?rev=31408&r1=31407&r2=31408&view=diff
==============================================================================
--- trunk/data/scenarios/hagworld-120x60-v1.2.sav       (original)
+++ trunk/data/scenarios/hagworld-120x60-v1.2.sav       Fri Jan  8 08:53:25 2016
@@ -1,6 +1,7 @@
 
 [scenario]
 is_scenario=TRUE
+game_version=20599
 name=_("Earth (classic/medium)")
 description=_("Classic-style 120x60 map of the Earth.")
 save_random=FALSE

Modified: trunk/data/scenarios/iberian-peninsula-136x100-v1.0.sav
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/data/scenarios/iberian-peninsula-136x100-v1.0.sav?rev=31408&r1=31407&r2=31408&view=diff
==============================================================================
--- trunk/data/scenarios/iberian-peninsula-136x100-v1.0.sav     (original)
+++ trunk/data/scenarios/iberian-peninsula-136x100-v1.0.sav     Fri Jan  8 
08:53:25 2016
@@ -1,6 +1,7 @@
 
 [scenario]
 is_scenario=TRUE
+game_version=20599
 name=_("Iberian Peninsula (classic/large)")
 description=_("Classic-style 136x100 map of the Iberian Peninsula (modern-day 
Spain and Portugal).")
 save_random=FALSE

Modified: trunk/data/scenarios/italy-100x100-v1.5.sav
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/data/scenarios/italy-100x100-v1.5.sav?rev=31408&r1=31407&r2=31408&view=diff
==============================================================================
--- trunk/data/scenarios/italy-100x100-v1.5.sav (original)
+++ trunk/data/scenarios/italy-100x100-v1.5.sav Fri Jan  8 08:53:25 2016
@@ -1,6 +1,7 @@
 
 [scenario]
 is_scenario=TRUE
+game_version=20599
 name=_("Italy (classic/medium)")
 description=_("Classic-style 100x100 map of Italy.")
 save_random=FALSE

Modified: trunk/data/scenarios/japan-88x100-v1.3.sav
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/data/scenarios/japan-88x100-v1.3.sav?rev=31408&r1=31407&r2=31408&view=diff
==============================================================================
--- trunk/data/scenarios/japan-88x100-v1.3.sav  (original)
+++ trunk/data/scenarios/japan-88x100-v1.3.sav  Fri Jan  8 08:53:25 2016
@@ -1,6 +1,7 @@
 
 [scenario]
 is_scenario=TRUE
+game_version=20599
 name=_("Japan (classic/medium)")
 description=_("Classic-style 88x100 map of Japan.")
 save_random=FALSE

Modified: trunk/data/scenarios/north_america_116x100-v1.2.sav
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/data/scenarios/north_america_116x100-v1.2.sav?rev=31408&r1=31407&r2=31408&view=diff
==============================================================================
--- trunk/data/scenarios/north_america_116x100-v1.2.sav (original)
+++ trunk/data/scenarios/north_america_116x100-v1.2.sav Fri Jan  8 08:53:25 2016
@@ -1,6 +1,7 @@
 
 [scenario]
 is_scenario=TRUE
+game_version=20599
 name=_("North America (classic/medium)")
 description=_("Classic-style 116x100 map of North America.")
 save_random=FALSE

Modified: trunk/data/scenarios/tileset-demo.sav
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/data/scenarios/tileset-demo.sav?rev=31408&r1=31407&r2=31408&view=diff
==============================================================================
--- trunk/data/scenarios/tileset-demo.sav       (original)
+++ trunk/data/scenarios/tileset-demo.sav       Fri Jan  8 08:53:25 2016
@@ -1,6 +1,7 @@
 
 [scenario]
 is_scenario=TRUE
+game_version=20599
 save_random=TRUE
 players=TRUE
 startpos_nations=FALSE

Modified: trunk/data/scenarios/tutorial.sav
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/data/scenarios/tutorial.sav?rev=31408&r1=31407&r2=31408&view=diff
==============================================================================
--- trunk/data/scenarios/tutorial.sav   (original)
+++ trunk/data/scenarios/tutorial.sav   Fri Jan  8 08:53:25 2016
@@ -1,6 +1,7 @@
 
 [scenario]
 is_scenario=TRUE
+game_version=20599
 name=_("Tutorial")
 description=_("Play this tutorial scenario to get an introduction to Freeciv.")
 save_random=FALSE

Modified: trunk/server/savecompat.c
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/server/savecompat.c?rev=31408&r1=31407&r2=31408&view=diff
==============================================================================
--- trunk/server/savecompat.c   (original)
+++ trunk/server/savecompat.c   Fri Jan  8 08:53:25 2016
@@ -1206,6 +1206,7 @@
 static void compat_load_dev(struct loaddata *loading)
 {
   bool randsaved;
+  int game_version;
   int plrno;
   int nplayers;
   size_t diplstate_type_size;
@@ -1215,9 +1216,14 @@
 
   log_debug("Upgrading data between development revisions");
 
-    /* Rename "random.save" as "random.saved", if not already saved by later 
name */
+  /* Rename "random.save" as "random.saved", if not already saved by later 
name */
   if (secfile_lookup_bool(loading->file, &randsaved, "random.save")) {
     secfile_insert_bool(loading->file, randsaved, "random.saved");
+  }
+
+  /* Move version information from game.version to scenario.game_version */
+  if (secfile_lookup_int(loading->file, &game_version, "game.version")) {
+    secfile_insert_int(loading->file, game_version, "scenario.game_version");
   }
 
   nplayers = secfile_lookup_int_default(loading->file, 0, "players.nplayers");

Modified: trunk/server/savegame3.c
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/server/savegame3.c?rev=31408&r1=31407&r2=31408&view=diff
==============================================================================
--- trunk/server/savegame3.c    (original)
+++ trunk/server/savegame3.c    Fri Jan  8 08:53:25 2016
@@ -1760,20 +1760,12 @@
 ****************************************************************************/
 static void sg_load_game(struct loaddata *loading)
 {
-  int game_version;
   const char *string;
   const char *level;
   int i;
 
   /* Check status and return if not OK (sg_success != TRUE). */
   sg_check_ret();
-
-  /* Load version. */
-  game_version
-    = secfile_lookup_int_default(loading->file, 0, "game.version");
-  /* We require at least version 2.90.99 */
-  sg_failure_ret(29099 <= game_version, "Saved game is too old, at least "
-                                        "version 2.90.99 required.");
 
   /* Load server state. */
   string = secfile_lookup_str_default(loading->file, "S_S_INITIAL",
@@ -1941,7 +1933,6 @@
 ****************************************************************************/
 static void sg_save_game(struct savedata *saving)
 {
-  int game_version;
   const char *user_message;
   enum server_states srv_state;
   char global_advances[game.control.num_tech_types + 1];
@@ -1949,9 +1940,6 @@
 
   /* Check status and return if not OK (sg_success != TRUE). */
   sg_check_ret();
-
-  game_version = MAJOR_VERSION *10000 + MINOR_VERSION *100 + PATCH_VERSION;
-  secfile_insert_int(saving->file, game_version, "game.version");
 
   /* Game state: once the game is no longer a new game (ie, has been
    * started the first time), it should always be considered a running
@@ -2155,9 +2143,17 @@
 static void sg_load_scenario(struct loaddata *loading)
 {
   const char *buf;
+  int game_version;
 
   /* Check status and return if not OK (sg_success != TRUE). */
   sg_check_ret();
+
+  /* Load version. */
+  game_version
+    = secfile_lookup_int_default(loading->file, 0, "scenario.game_version");
+  /* We require at least version 2.90.99 */
+  sg_failure_ret(29099 <= game_version, "Saved game is too old, at least "
+                                        "version 2.90.99 required.");
 
   sg_failure_ret(secfile_lookup_bool(loading->file, &game.scenario.is_scenario,
                                      "scenario.is_scenario"), "%s", 
secfile_error());
@@ -2225,9 +2221,13 @@
 static void sg_save_scenario(struct savedata *saving)
 {
   struct entry *mod_entry;
+  int game_version;
 
   /* Check status and return if not OK (sg_success != TRUE). */
   sg_check_ret();
+
+  game_version = MAJOR_VERSION * 10000 + MINOR_VERSION * 100 + PATCH_VERSION;
+  secfile_insert_int(saving->file, game_version, "scenario.game_version");
 
   if (!saving->scenario || !game.scenario.is_scenario) {
     secfile_insert_bool(saving->file, FALSE, "scenario.is_scenario");


_______________________________________________
Freeciv-commits mailing list
Freeciv-commits@gna.org
https://mail.gna.org/listinfo/freeciv-commits

Reply via email to