Complete.Org: Mailing Lists: Archives: freeciv-dev: March 2005:
[Freeciv-Dev] (PR#12377) bug: "end turn" greys out and never comes back
Home

[Freeciv-Dev] (PR#12377) bug: "end turn" greys out and never comes back

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: bh@xxxxxxxxxxxxxxxxxxx, per@xxxxxxxxxxx
Subject: [Freeciv-Dev] (PR#12377) bug: "end turn" greys out and never comes back
From: "Jason Short" <jdorje@xxxxxxxxxxxxxxxxxxxxx>
Date: Mon, 14 Mar 2005 14:43:39 -0800
Reply-to: bugs@xxxxxxxxxxx

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

Problem is the turn-done-button is updated when the new-phase packet is
received.  However this button depends on the value of
pplayer->phase_done which is only updated when a player packet is
received.  And receiving a player packet does not trigger a
turn-done-button update.

There are lots of ways this could be fixed.  Perhaps the easiest and
ugliest is just to set pplayer->phase_done when a new-phase packet is
received.

-jason

Index: client/packhand.c
===================================================================
RCS file: /home/freeciv/CVS/freeciv/client/packhand.c,v
retrieving revision 1.476
diff -u -r1.476 packhand.c
--- client/packhand.c   5 Mar 2005 23:51:05 -0000       1.476
+++ client/packhand.c   14 Mar 2005 22:42:19 -0000
@@ -818,6 +818,10 @@
   game.phase = phase;
 
   if (is_player_phase(game.player_ptr, phase)) {
+    /* HACK: this is updated by the player packet too; we update it here
+     * so the turn done button state will be set properly. */
+    game.player_ptr->phase_done = FALSE;
+
     agents_start_turn();
     non_ai_unit_focus = FALSE;
 

[Prev in Thread] Current Thread [Next in Thread]