<URL: http://bugs.freeciv.org/Ticket/Display.html?id=40449 >

> [EMAIL PROTECTED] - Thu Aug 21 01:48:24 2008]:
> 
> gtk2 on both windows and linux.
> 
> Try changing options using "More Game Options", then changing from the
> server that same option, and disconnect and reconnect the client.  Of
> course, access level ctrl is assumed.

Alright, thanks to that clarification I found the code that
does this. Attached patch changes it to only send the "local"
settings (those that were previously saved to the civclientrc)
if the connected server is the one started via fork, that is,
only when the client starts the server via the 'Start New
Game' button.


-----------------------------------------------------------------------
真の詩人はその場で耳新しい諺を思いつくことができる。
diff --git a/client/repodlgs_common.c b/client/repodlgs_common.c
index 05d5a79..c453170 100644
--- a/client/repodlgs_common.c
+++ b/client/repodlgs_common.c
@@ -29,6 +29,7 @@
 #include "repodlgs_g.h"
 
 #include "civclient.h"		/* can_client_issue_orders */
+#include "connectdlg_common.h"	/* is_server_running */
 #include "control.h"
 #include "options.h"
 #include "repodlgs_common.h"
@@ -350,7 +351,10 @@ void handle_options_settable(struct packet_options_settable *packet)
 
   /* have no proper final packet, test for the last instead */
   if (i == (num_settable_options - 1) && !settable_options_loaded) {
-    load_settable_options(TRUE);
+    /* Only send our private settings if we are running
+     * on a forked local server, i.e. started by the
+     * client with the "Start New Game" button. */
+    load_settable_options(is_server_running());
     settable_options_loaded = TRUE;
   }
 }
_______________________________________________
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev

Reply via email to