Author: sveinung
Date: Wed Nov  2 15:26:23 2016
New Revision: 34331

URL: http://svn.gna.org/viewcvs/freeciv?rev=34331&view=rev
Log:
client: stop storing server topology choice.

The function client_start_server() sets topology based on tileset. Its
conclusions have ended up in most client setting files.

A stored topology interacts badly with tileset ruleset change, ruleset
tileset change and topology tileset change. It breaks ruleset default
topology.

The tileset is already stored in the client setting file.

See bug #25249

Modified:
    trunk/client/options.c

Modified: trunk/client/options.c
URL: 
http://svn.gna.org/viewcvs/freeciv/trunk/client/options.c?rev=34331&r1=34330&r2=34331&view=diff
==============================================================================
--- trunk/client/options.c      (original)
+++ trunk/client/options.c      Wed Nov  2 15:26:23 2016
@@ -5623,6 +5623,19 @@
       /* Do not save mapseed or gameseed. */
       continue;
     }
+    if (!fc_strcasecmp(name, "topology")) {
+      /* client_start_server() sets topology based on tileset. Don't store
+       * its choice. The tileset is already stored. Storing topology leads
+       * to all sort of breakage:
+       * - it breaks ruleset default topology.
+       * - it interacts badly with tileset ruleset change, ruleset tileset
+       *   change and topology tileset change.
+       * - its value is probably based on what tileset was loaded when
+       *   client_start_server() decided to set topology, not on player
+       *   choice.
+       */
+      continue;
+    }
     secfile_insert_str(sf, value, "server.%s", name);
   } settable_options_hash_iterate_end;
 }


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

Reply via email to