Complete.Org: Mailing Lists: Archives: freeciv-dev: November 2003:
[Freeciv-Dev] Re: (PR#6585) Delta version 8
Home

[Freeciv-Dev] Re: (PR#6585) Delta version 8

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: undisclosed-recipients: ;
Subject: [Freeciv-Dev] Re: (PR#6585) Delta version 8
From: "Raimar Falke" <i-freeciv-lists@xxxxxxxxxxxxx>
Date: Fri, 14 Nov 2003 12:30:52 -0800
Reply-to: rt@xxxxxxxxxxx

<URL: http://rt.freeciv.org/Ticket/Display.html?id=6585 >

On Thu, Nov 13, 2003 at 11:12:04AM -0800, Raimar Falke wrote:
> Still open:
>  - capability support

Added. It support adding and removing fields.

Other changes:
 - add call to connection_init_packet_hashs in the client code

There is something which I think is buggy in the CVS HEAD code.

The client sends its capabilities to the server in the join
packet. The server checks for mandatory capabilities. If everything is
ok the server reply with its capabilities. The server will copy the
capabilities of the client into its connection struct
(connecthand.c:272). The client will copy the capabilities of the
server into its connection struct (packhand.c:153). The test for
sending a certain field is now

  if(has_capability("foobar", pc->capability))

This is wrong since you also have to check your own capabilities. The
correct test has to be

  if(has_capability("foobar", pc->capability) && 
     has_capability("foobar", our_capability))

This hasn't been turned up yet because it will only kick in if you
reduce your own capabilities using FREECIV_CAPS (like I did during
tests).

The delta patch has now the full set of features. I don't plan to
expand it any further. The remaining task is to kill all bugs.

        Raimar

-- 
 email: rf13@xxxxxxxxxxxxxxxxx
  This message has been ROT-13 encrypted twice for extra security.

Attachment: delta8.diff.bz2
Description: Binary data


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