Complete.Org: Mailing Lists: Archives: freeciv-dev: May 2002:
[Freeciv-Dev] Re: "End Turn when done moving" broken (PR#1520)
Home

[Freeciv-Dev] Re: "End Turn when done moving" broken (PR#1520)

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: freeciv-dev@xxxxxxxxxxx, bugs@xxxxxxxxxxxxxxxxxxx
Subject: [Freeciv-Dev] Re: "End Turn when done moving" broken (PR#1520)
From: Raimar Falke <rf13@xxxxxxxxxxxxxxxxx>
Date: Thu, 30 May 2002 14:45:56 +0200

On Thu, May 30, 2002 at 11:13:11AM +0100, Ben Webb wrote:
> On Thu, May 30, 2002 at 11:28:00AM +0200, Raimar Falke wrote:
> > On Wed, May 29, 2002 at 01:39:50PM -0700, Ben Webb wrote:
> > >   The client no longer (as of current CVS) ends the turn
> > > automatically when all units have finished moving. This is because a
> > > recent commit that prevented the turn from ending if agents were busy
> > > prevents this from occurring (as the agents are "frozen" during the
> > > processing of the unit move packet, and "frozen" counts as "busy"). The
> > > attached patch fixes this behaviour on my system.
> > 
> > Can you tell me where is the original call to send_turn_done which the
> > recent change disabled. I couldn't find it on a quick scan.
> 
> handle_unit_info (packhand.c) calls
> update_unit_focus (control.c) which calls
> advance_unit_focus which calls
> key_end_turn which calls
> send_turn_done (civclient.c)
> 
>       The recent change added the "if (agents_busy())" check to
> send_turn_done; since all of this code is triggered by a UNIT_INFO
> packet from the server, the agents are frozen by the preceding
> PROCESSING_STARTED packet.

Thanks for the explanation. I now agree with the fix. However we have
change

    /*
     * The turn done button is disabled but the user may have press
     * the return key.
     */

to
    /*
     * The turn done button is disabled but the user may have press
     * the return key or the auto_turn_done mode is active.
     */

        Raimar

-- 
 email: rf13@xxxxxxxxxxxxxxxxx
 "There are three ways to get something done. Do it yourself, hire someone
  to do it for you or forbid your kids to do it."


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