[Freeciv-Dev] (PR#39946) [cleanup] send_game_info()

2007-12-04 Thread William Allen Simpson

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39946 

Now that the code and symbols are more readable (see PR#39940), several
potential bugs become more apparent.

Fix bad parameters in savegame (from PR#39940).

The number of players is in game.info, so send_game_info() MUST be called
before send_player_info().  Fixed several potential bugs.

Fix old hack by using S_S_GENERATING_WAITING, so named because previous code
called it GAME_GENERATION_STATE, Waiting, UNUSED_STATE, and Unknown.

Removed duplicate sends in server/plrhand.c split_player()
Removed duplicate sends in server/stdinhand.c set_command()

Since this is a cleanup, not affecting user visible features, leave the
popdown_races_dialog(), but flag it with a FIXME!

Index: server/srv_main.c
===
--- server/srv_main.c   (revision 14128)
+++ server/srv_main.c   (working copy)
@@ -836,12 +836,12 @@
   freelog(LOG_DEBUG, Updatetimeout);
   update_timeout();
 
+  freelog(LOG_DEBUG, Sendgameinfo);
+  send_game_info(NULL);
+
   freelog(LOG_DEBUG, Sendplayerinfo);
   send_player_info(NULL, NULL);
 
-  freelog(LOG_DEBUG, Sendgameinfo);
-  send_game_info(NULL);
-
   freelog(LOG_DEBUG, Sendyeartoclients);
   send_year_to_clients(game.info.year);
 }
@@ -974,9 +974,10 @@
 
   con_puts(C_OK, _(Starting game.));
 
-  set_server_state(S_S_RUNNING); /* loaded ??? */
+  set_server_state(S_S_GENERATING_WAITING); /* loaded ??? */
   force_end_of_sniff = TRUE;
   send_server_settings(NULL);
+  /* There's no stateful packet set to client until srv_ready(). */
 }
 
 /**
@@ -1205,11 +1206,10 @@
 
   if (S_S_RUNNING == server_state()
type != PACKET_PLAYER_READY) {
-/* HACK: the player_ready packet puts the server into S_S_RUNNING
- * but doesn't actually start the game.  The game isn't started until
- * the main loop is re-entered, so kill_dying_players would think
+/* handle_player_ready() calls start_game(), but the game isn't started
+ * until the main loop is re-entered, so kill_dying_players would think
  * all players are dead.  This should be solved by adding a new
- * game state S_S_GENERATING. */
+ * game state (now S_S_GENERATING_WAITING). */
 kill_dying_players();
   }
 
Index: server/gamehand.c
===
--- server/gamehand.c   (revision 14128)
+++ server/gamehand.c   (working copy)
@@ -374,6 +374,10 @@
 /**
   Send game_info packet; some server options and various stuff...
   dest==NULL means game.est_connections
+
+  It may be sent at any time. It MUST be sent before any player info, 
+  as it contains the number of players.  To avoid inconsistency, it
+  SHOULD be sent after rulesets and any other server settings.
 **/
 void send_game_info(struct conn_list *dest)
 {
Index: server/edithand.c
===
--- server/edithand.c   (revision 14128)
+++ server/edithand.c   (working copy)
@@ -503,11 +503,11 @@
 research-tech_goal = A_UNSET;
   }
 
+  /* Inform everybody about global advances */
+  send_game_info(NULL);
+
   /* send update back to client */
   send_player_info(NULL, pplayer);
-
-  /* Inform everybody about global advances */
-  send_game_info(NULL);
 }
 
 /
Index: server/meta.c
===
--- server/meta.c   (revision 14128)
+++ server/meta.c   (working copy)
@@ -235,8 +235,8 @@
   case S_S_OVER:
 sz_strlcpy(state, Game Ended);
 break;
-  case S_S_GENERATING_WAITING_UNUSED:
-sz_strlcpy(state, Unknown);
+  case S_S_GENERATING_WAITING:
+sz_strlcpy(state, Generating);
 break;
   }
 
Index: server/sernet.c
===
--- server/sernet.c (revision 14128)
+++ server/sernet.c (working copy)
@@ -1176,7 +1176,7 @@
   case S_S_OVER:
 my_snprintf(status, sizeof(status), Game over);
 break;
-  case S_S_GENERATING_WAITING_UNUSED:
+  case S_S_GENERATING_WAITING:
 my_snprintf(status, sizeof(status), Waiting);
   }
 
Index: server/stdinhand.c
===
--- server/stdinhand.c  (revision 14128)
+++ server/stdinhand.c  (working copy)
@@ -2596,17 +2596,14 @@
 
   if (!check  do_update) {
 send_server_setting(NULL, cmd);
-send_game_info(NULL);
-reset_all_start_commands();
-send_server_info_to_metaserver(META_INFO);
 /* 
  * send any modified game parameters to the clients -- if sent
  * before S_S_RUNNING, triggers a popdown_races_dialog() call
  * in client/packhand.c#handle_game_info() 
  */
-if 

Re: [Freeciv-Dev] (PR#39945) make fails in 2.1

2007-12-04 Thread William Allen Simpson

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39945 

Doesn't here.  But presumably fixed by Jason in r14128.  Any other po
have this problem?

Who'd a thunk a compiler would scan # comment lines  Sometimes,
folks try a bit too hard (or depending on your view, not hard enough)!



___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


Re: [Freeciv-Dev] (PR#39946) [cleanup] send_game_info()

2007-12-04 Thread William Allen Simpson

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39946 

Committed S2_1 revision 14129.
Committed S2_2 revision 14130.
Committed trunk revision 14131.



___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


Re: [Freeciv-Dev] (PR#39926) 2.2-test build error in settings.c with gcc 2.95.3

2007-12-04 Thread Begasus

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39926 


On 2007-11-29 at 04:06:55 [+], William Allen Simpson 
[EMAIL PROTECTED] wrote:
 
 URL: http://bugs.freeciv.org/Ticket/Display.html?id=39926 
 
 Begasus wrote:
  Sending the diff file now I used to get the source of the 2.2 branch (yeah
  I know .. have these urges! ;) ) to compile in BeOS. Have used svn diff in
  ubuntu (after checking all compiles) to create the diff file. Maybe you
  could have a look at it.
  
 Please don't submit new patches to old resolved tickets.  Start a new 
 ticket,
 with a useful subject and explanations for each change.

My fault .. I didn't realize that mailing the patch as a reply to the emails 
I got from the ticked made it end up in the old resolved ticket.
Will create a new one ... 

Greetings 



___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#39947) beos sdl-client

2007-12-04 Thread Begasus

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39947 

Third (second one went to [EMAIL PROTECTED] as stated on the bugs site) try, 
seems the previous one ended up in a fixed ticket (sorry for 
that). This fix lets the build (sdl) compile completly (checked with the 
trunk checkout r14131)

Greetings
[EMAIL PROTECTED]:~/freeciv2.2$ svn diff
Index: server/cityturn.c
===
--- server/cityturn.c   (revision 14099)
+++ server/cityturn.c   (working copy)
@@ -638,7 +638,7 @@
   if (valid_improvement(choice.value.building)) {
 struct universal target = {
   .kind = VUT_IMPROVEMENT,
-  .value.building = choice.value.building
+  .value = {.building = choice.value.building}
 };
 
 change_build_target(pplayer, pcity, target, E_IMP_AUTO);
@@ -651,7 +651,7 @@
 !building_has_effect(pimprove, EFT_CAPITAL_CITY)) {
   struct universal target = {
 .kind = VUT_IMPROVEMENT,
-.value.building = pimprove
+.value = {.building = pimprove}
   };
 
   change_build_target(pplayer, pcity, target, E_IMP_AUTO);
Index: server/savegame.c
===
--- server/savegame.c   (revision 14099)
+++ server/savegame.c   (working copy)
@@ -3001,6 +3001,7 @@
   i = -1;
   unit_list_iterate(plr-units, punit) {
 i++;
+{
 int activity;
 
 secfile_insert_int(file, punit-id, player%d.u%d.id, plrno, i);
@@ -3456,6 +3457,7 @@
 #undef PART_ADJUST
 #undef PART_SIZE
 }
+}
 
 
 /***
Index: common/effects.c
===
--- common/effects.c(revision 14099)
+++ common/effects.c(working copy)
@@ -539,7 +539,7 @@
   struct universal source = {
 .kind = VUT_IMPROVEMENT,
 /* just to bamboozle the annoying compiler warning */
-.value.building = improvement_by_number(improvement_number(pimprove))
+.value = {.building = improvement_by_number(improvement_number(pimprove))}
   };
   struct effect_list *plist = get_req_source_effects(source);
 
@@ -694,7 +694,7 @@
   struct effect_list *plist;
   struct universal source = {
 .kind = VUT_IMPROVEMENT,
-.value.building = pimprove
+.value = {.building = pimprove}
   };
 
   /* A capitalization production is never redundant. */
@@ -1011,7 +1011,7 @@
 struct impr_type *building = pcity-production.value.building;
 struct universal source = {
   .kind = VUT_IMPROVEMENT,
-  .value.building = building
+  .value = {.building = building}
 };
 struct effect_list *plist = get_req_source_effects(source);
 int power = 0;
Index: ai/aicity.c
===
--- ai/aicity.c (revision 14099)
+++ ai/aicity.c (working copy)
@@ -793,7 +793,7 @@
   struct government *gov = government_of_player(pplayer);
   struct universal source = {
 .kind = VUT_IMPROVEMENT,
-.value.building = pimprove
+.value = {.building = pimprove}
   };
   const bool is_coinage = improvement_has_flag(pimprove, IF_GOLD);
 
Index: ai/aidata.c
===
--- ai/aidata.c (revision 14099)
+++ ai/aidata.c (working copy)
@@ -66,7 +66,7 @@
   improvement_iterate(pimprove) {
 struct universal source = {
   .kind = VUT_IMPROVEMENT,
-  .value.building = pimprove
+  .value = {.building = pimprove}
 };
 
 ai-impr_calc[improvement_index(pimprove)] = AI_IMPR_ESTIMATE;
Index: client/helpdata.c
===
--- client/helpdata.c   (revision 14099)
+++ client/helpdata.c   (working copy)
@@ -657,7 +657,7 @@
 {
   struct universal source = {
 .kind = VUT_IMPROVEMENT,
-.value.building = pimprove
+.value = {.building = pimprove}
   };
 
   assert(buf);
@@ -1084,7 +1084,7 @@
   struct advance *vap = valid_advance_by_number(i);
   struct universal source = {
 .kind = VUT_ADVANCE,
-.value.advance = vap
+.value = {.advance = vap}
   };
 
   assert(bufuser_text);
@@ -1173,7 +1173,7 @@
 {
   struct universal source = {
 .kind = VUT_TERRAIN,
-.value.terrain = pterrain
+.value = {.terrain = pterrain}
   };
   buf[0] = '\0';
   
@@ -1229,7 +1229,7 @@
 {
   struct universal source = {
 .kind = VUT_GOVERNMENT,
-.value.govern = gov
+.value = {.govern = gov}
   };
 
   buf[0] = '\0';
Index: client/tilespec.c
===
--- client/tilespec.c   (revision 14099)
+++ client/tilespec.c   (working copy)
@@ -4226,6 +4226,7 @@
 
   /* Unit drawing is disabled if the view options is turned off, but only
* if we're drawing on the mapview. */
+{
   bool do_draw_unit = (punit  (draw_units || !ptile
 || (draw_focus_unit
  unit_is_in_focus(punit;
@@ -4495,6 +4496,7 

Re: [Freeciv-Dev] (PR#39947) beos sdl-client

2007-12-04 Thread Jason Dorje Short

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39947 

Begasus wrote:
 URL: http://bugs.freeciv.org/Ticket/Display.html?id=39947 
 
 Third (second one went to [EMAIL PROTECTED] as stated on the bugs site) try, 
 seems the previous one ended up in a fixed ticket (sorry for 
 that). This fix lets the build (sdl) compile completly (checked with the 
 trunk checkout r14131)

Here's 2 separate patches for the 2 types of fixes.

The init patch is rather ugly.  gcc-2.95 doesn't accept general c99 
initializers; by patching it this way we make it so that it is valid c99 
but still works in gcc 2.95.

-jason

Index: server/cityturn.c
===
--- server/cityturn.c	(revision 14131)
+++ server/cityturn.c	(working copy)
@@ -638,7 +638,7 @@
   if (valid_improvement(choice.value.building)) {
 struct universal target = {
   .kind = VUT_IMPROVEMENT,
-  .value.building = choice.value.building
+  .value = {.building = choice.value.building}
 };
 
 change_build_target(pplayer, pcity, target, E_IMP_AUTO);
@@ -651,7 +651,7 @@
 	 !building_has_effect(pimprove, EFT_CAPITAL_CITY)) {
   struct universal target = {
 .kind = VUT_IMPROVEMENT,
-.value.building = pimprove
+.value = {.building = pimprove}
   };
 
   change_build_target(pplayer, pcity, target, E_IMP_AUTO);
Index: common/effects.c
===
--- common/effects.c	(revision 14131)
+++ common/effects.c	(working copy)
@@ -539,7 +539,7 @@
   struct universal source = {
 .kind = VUT_IMPROVEMENT,
 /* just to bamboozle the annoying compiler warning */
-.value.building = improvement_by_number(improvement_number(pimprove))
+.value = {.building = improvement_by_number(improvement_number(pimprove))}
   };
   struct effect_list *plist = get_req_source_effects(source);
 
@@ -694,7 +694,7 @@
   struct effect_list *plist;
   struct universal source = {
 .kind = VUT_IMPROVEMENT,
-.value.building = pimprove
+.value = {.building = pimprove}
   };
 
   /* A capitalization production is never redundant. */
@@ -1011,7 +1011,7 @@
 struct impr_type *building = pcity-production.value.building;
 struct universal source = {
   .kind = VUT_IMPROVEMENT,
-  .value.building = building
+  .value = {.building = building}
 };
 struct effect_list *plist = get_req_source_effects(source);
 int power = 0;
Index: ai/aicity.c
===
--- ai/aicity.c	(revision 14131)
+++ ai/aicity.c	(working copy)
@@ -793,7 +793,7 @@
   struct government *gov = government_of_player(pplayer);
   struct universal source = {
 .kind = VUT_IMPROVEMENT,
-.value.building = pimprove
+.value = {.building = pimprove}
   };
   const bool is_coinage = improvement_has_flag(pimprove, IF_GOLD);
 
Index: ai/aidata.c
===
--- ai/aidata.c	(revision 14131)
+++ ai/aidata.c	(working copy)
@@ -66,7 +66,7 @@
   improvement_iterate(pimprove) {
 struct universal source = {
   .kind = VUT_IMPROVEMENT,
-  .value.building = pimprove
+  .value = {.building = pimprove}
 };
 
 ai-impr_calc[improvement_index(pimprove)] = AI_IMPR_ESTIMATE;
Index: client/helpdata.c
===
--- client/helpdata.c	(revision 14131)
+++ client/helpdata.c	(working copy)
@@ -657,7 +657,7 @@
 {
   struct universal source = {
 .kind = VUT_IMPROVEMENT,
-.value.building = pimprove
+.value = {.building = pimprove}
   };
 
   assert(buf);
@@ -1084,7 +1084,7 @@
   struct advance *vap = valid_advance_by_number(i);
   struct universal source = {
 .kind = VUT_ADVANCE,
-.value.advance = vap
+.value = {.advance = vap}
   };
 
   assert(bufuser_text);
@@ -1173,7 +1173,7 @@
 {
   struct universal source = {
 .kind = VUT_TERRAIN,
-.value.terrain = pterrain
+.value = {.terrain = pterrain}
   };
   buf[0] = '\0';
   
@@ -1229,7 +1229,7 @@
 {
   struct universal source = {
 .kind = VUT_GOVERNMENT,
-.value.govern = gov
+.value = {.govern = gov}
   };
 
   buf[0] = '\0';
Index: client/mapctrl_common.c
===
--- client/mapctrl_common.c	(revision 14131)
+++ client/mapctrl_common.c	(working copy)
@@ -60,7 +60,7 @@
 /* The mapcanvas clipboard */
 struct universal clipboard =
 { .kind = VUT_NONE,
-  .value.building = NULL
+  .value = {.building = NULL}
 };
 
 /* Goto with drag and drop. */
Index: client/climisc.c
===
--- client/climisc.c	(revision 14131)
+++ client/climisc.c	(working copy)
@@ -460,7 +460,7 @@
 {
   struct universal target = {
 .kind = VUT_UTYPE,
-.value.utype = punittype};
+.value = {.utype = punittype}};
 
   return cid_encode(target);
 }
@@ -472,7 +472,7 

Re: [Freeciv-Dev] (PR#39947) AutoReply: beos sdl-client

2007-12-04 Thread Begasus

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39947 

Looked like the previous patch wasn't complete ... this should take care of 
it.


On 2007-12-04 at 19:38:26 [+], The default queue [EMAIL PROTECTED] 
wrote:
 
 Greetings,
 
 This message has been automatically generated in response to the
 creation of a trouble ticket regarding:
 beos sdl-client,
 a summary of which appears below.
 
 There is no need to reply to this message right now.  Your ticket has been
 assigned an ID of (PR#39947).
 
 Please include the string:
 
  (PR#39947)
 
 in the subject line of all future correspondence about this issue. To do so,
 you may reply to this message.
 
 Thank you,
 
 
 -
 Third (second one went to [EMAIL PROTECTED] as stated on the bugs site) try,
 seems the previous one ended up in a fixed ticket (sorry for
 that). This fix lets the build (sdl) compile completly (checked with the
 trunk checkout r14131)
 
 Greetings
diff -Nur freeciv2.2/ai/aicity.c freeciv2.2_beos/ai/aicity.c
--- freeciv2.2/ai/aicity.c  Wed Nov 28 18:06:09 2007
+++ freeciv2.2_beos/ai/aicity.c Wed Nov 28 21:30:03 2007
@@ -793,7 +793,7 @@
   struct government *gov = government_of_player(pplayer);
   struct universal source = {
 .kind = VUT_IMPROVEMENT,
-.value.building = pimprove
+.value = {.building = pimprove}
   };
   const bool is_coinage = improvement_has_flag(pimprove, IF_GOLD);
 
diff -Nur freeciv2.2/ai/aidata.c freeciv2.2_beos/ai/aidata.c
--- freeciv2.2/ai/aidata.c  Wed Nov 28 18:06:09 2007
+++ freeciv2.2_beos/ai/aidata.c Wed Nov 28 21:30:29 2007
@@ -66,7 +66,7 @@
   improvement_iterate(pimprove) {
 struct universal source = {
   .kind = VUT_IMPROVEMENT,
-  .value.building = pimprove
+  .value = {.building = pimprove}
 };
 
 ai-impr_calc[improvement_index(pimprove)] = AI_IMPR_ESTIMATE;
diff -Nur freeciv2.2/client/climisc.c freeciv2.2_beos/client/climisc.c
--- freeciv2.2/client/climisc.c Wed Nov 28 18:06:27 2007
+++ freeciv2.2_beos/client/climisc.cWed Nov 28 21:39:43 2007
@@ -460,7 +460,7 @@
 {
   struct universal target = {
 .kind = VUT_UTYPE,
-.value.utype = punittype};
+.value = {.utype = punittype}};
 
   return cid_encode(target);
 }
@@ -472,7 +472,7 @@
 {
   struct universal target = {
 .kind = VUT_IMPROVEMENT,
-.value.building = pimprove
+.value = {.building = pimprove}
   };
 
   return cid_encode(target);
diff -Nur freeciv2.2/client/helpdata.c freeciv2.2_beos/client/helpdata.c
--- freeciv2.2/client/helpdata.cWed Nov 28 18:06:27 2007
+++ freeciv2.2_beos/client/helpdata.c   Wed Nov 28 21:41:54 2007
@@ -657,7 +657,7 @@
 {
   struct universal source = {
 .kind = VUT_IMPROVEMENT,
-.value.building = pimprove
+.value = {.building = pimprove}
   };
 
   assert(buf);
@@ -1084,7 +1084,7 @@
   struct advance *vap = valid_advance_by_number(i);
   struct universal source = {
 .kind = VUT_ADVANCE,
-.value.advance = vap
+.value = {.advance = vap}
   };
 
   assert(bufuser_text);
@@ -1173,7 +1173,7 @@
 {
   struct universal source = {
 .kind = VUT_TERRAIN,
-.value.terrain = pterrain
+.value ={.terrain = pterrain}
   };
   buf[0] = '\0';
   
@@ -1229,7 +1229,7 @@
 {
   struct universal source = {
 .kind = VUT_GOVERNMENT,
-.value.govern = gov
+.value = {.govern = gov}
   };
 
   buf[0] = '\0';
diff -Nur freeciv2.2/client/mapctrl_common.c 
freeciv2.2_beos/client/mapctrl_common.c
--- freeciv2.2/client/mapctrl_common.c  Wed Nov 28 18:06:27 2007
+++ freeciv2.2_beos/client/mapctrl_common.c Wed Nov 28 21:42:30 2007
@@ -60,7 +60,7 @@
 /* The mapcanvas clipboard */
 struct universal clipboard =
 { .kind = VUT_NONE,
-  .value.building = NULL
+  .value = {.building = NULL}
 };
 
 /* Goto with drag and drop. */
diff -Nur freeciv2.2/client/tilespec.c freeciv2.2_beos/client/tilespec.c
--- freeciv2.2/client/tilespec.cWed Nov 28 18:06:27 2007
+++ freeciv2.2_beos/client/tilespec.c   Wed Nov 28 21:43:46 2007
@@ -4226,6 +4226,7 @@
 
   /* Unit drawing is disabled if the view options is turned off, but only
* if we're drawing on the mapview. */
+  {
   bool do_draw_unit = (punit  (draw_units || !ptile
 || (draw_focus_unit
  unit_is_in_focus(punit;
@@ -4494,6 +4495,7 @@
   }
 
   return sprs - save_sprs;
+  }
 }
 
 /**
diff -Nur freeciv2.2/common/effects.c freeciv2.2_beos/common/effects.c
--- freeciv2.2/common/effects.c Wed Nov 28 18:06:06 2007
+++ freeciv2.2_beos/common/effects.cWed Nov 28 21:27:58 2007
@@ -539,7 +539,7 @@
   struct universal source = {
 .kind = VUT_IMPROVEMENT,
 /* just to bamboozle the annoying compiler warning */
-.value.building = improvement_by_number(improvement_number(pimprove))
+.value = {.building = 

[Freeciv-Dev] (PR#39919) freeze on Haiku (formaly openbeos)

2007-12-04 Thread

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39919 

Try'd it with the option civclient -P none and get the following
output from a recent trunk build.

GNU gdb 6.3
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain
conditions.
Type show copying to see the conditions.
There is absolutely no warranty for GDB.  Type show warranty for details.
This GDB was configured as i586-pc-haiku...Dwarf Error: Could not find
abbrevnumber 95 [in module /boot/apps/Games/Freeciv/bin/civclient]

[tcsetpgrp failed in terminal_inferior: Invalid Argument]
Thread 170 caused an exception: Segment violation
Reading symbols from /boot/beos/system/lib/libnetwork.so...(no debugging
symbols found)...done.
Loaded symbols for /boot/beos/system/lib/libnetwork.so
Reading symbols from /boot/home/config//lib/libiconv.so...done.
Loaded symbols for /boot/home/config//lib/libiconv.so
Reading symbols from /boot/home/config//lib/libSDL_image.so...done.
Loaded symbols for /boot/home/config//lib/libSDL_image.so
Reading symbols from /boot/home/config//lib/libSDL.so...done.
Loaded symbols for /boot/home/config//lib/libSDL.so
Reading symbols from /boot/home/config//lib/libfreetype.so...Error while
reading shared library symbols:
Dwarf Error: Could not find abbrev number 488 [in module
/boot/home/config//lib/libfreetype.so]
Reading symbols from /boot/home/config//lib/libSDL_mixer.so...done.
Loaded symbols for /boot/home/config//lib/libSDL_mixer.so
Reading symbols from /boot/beos/system/lib/libroot.so...done.
Loaded symbols for /boot/beos/system/lib/libroot.so
Reading symbols from /boot/beos/system/lib/libbe.so...done.
Loaded symbols for /boot/beos/system/lib/libbe.so
Reading symbols from /boot/beos/system/lib/libpng.so...done.
Loaded symbols for /boot/beos/system/lib/libpng.so
Reading symbols from /boot/home/config/lib/libjpeg.so...done.
Loaded symbols for /boot/home/config/lib/libjpeg.so
Reading symbols from /boot/home/config/lib/libtiff.so...done.
Loaded symbols for /boot/home/config/lib/libtiff.so
Reading symbols from /boot/beos/system/lib/libGL.so...done.
Loaded symbols for /boot/beos/system/lib/libGL.so
Reading symbols from /boot/beos/system/lib/libmedia.so...done.
Loaded symbols for /boot/beos/system/lib/libmedia.so
Reading symbols from /boot/beos/system/lib/libgame.so...done.
Loaded symbols for /boot/beos/system/lib/libgame.so
Reading symbols from /boot/beos/system/lib/libdevice.so...done.
Loaded symbols for /boot/beos/system/lib/libdevice.so
Reading symbols from /boot/beos/system/lib/libtextencoding.so...done.
Loaded symbols for /boot/beos/system/lib/libtextencoding.so
Reading symbols from /boot/home/config/lib/libvorbisfile.so...done.
Loaded symbols for /boot/home/config/lib/libvorbisfile.so
Reading symbols from /boot/home/config/lib/libvorbis.so...done.
Loaded symbols for /boot/home/config/lib/libvorbis.so
Reading symbols from /boot/home/config/lib/libogg.so...done.
Loaded symbols for /boot/home/config/lib/libogg.so
Reading symbols from /boot/beos/system/lib/libstdc++.r4.so...done.
Loaded symbols for /boot/beos/system/lib/libstdc++.r4.so
Reading symbols from /boot/beos/system/lib/libz.so...done.
Loaded symbols for /boot/beos/system/lib/libz.so
[tcsetpgrp failed in terminal_inferior: Invalid Argument]

[Switching to team ./civclient -P none (169) thread SDL (170)]
0x00784d4f in BPrivate::processHeap::free ()
   from /boot/beos/system/lib/libroot.so
(gdb) 



 [jdorje - Di. nov. 27 18:06:56 2007]:
 
 Can you kill it with a SEGV and get a backtrace?  Or run within gdb?
 
 And yeah, disabling sound might be wise...sound really shouldn't crash
 though.
 
 -jason
 
 


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] (PR#39919) freeze on Haiku (formaly openbeos)

2007-12-04 Thread

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39919 

[Switching to team ./civclient -P none (166) thread SDL (167)]
0x00784d4f in BPrivate::processHeap::free ()
   from /boot/beos/system/lib/libroot.so
(gdb) bt
#0  0x00784d4f in BPrivate::processHeap::free ()
   from /boot/beos/system/lib/libroot.so
#1  0x00786590 in free () from /boot/beos/system/lib/libroot.so
#2  0x008e867b in BApplication::_ArgvReceived ()
   from /boot/beos/system/lib/libbe.so
#3  0x008e6cf0 in BApplication::DispatchMessage ()
   from /boot/beos/system/lib/libbe.so
#4  0x008f14c5 in BLooper::task_looper () from
/boot/beos/system/lib/libbe.so
#5  0x008e563d in BApplication::Run () from /boot/beos/system/lib/libbe.so
#6  0x005c22b2 in StartBeApp (unused=0x0) at ./src/main/beos/SDL_BeApp.cc:46
#7  0x005cbdfc in SDL_RunThread (data=0x1801a220)
at ./src/thread/SDL_thread.c:202
#8  0x005f4f43 in RunThread (data=0x)
at ./src/thread/beos/SDL_systhread.c:58
#9  0x0077c0d0 in thread_entry () from /boot/beos/system/lib/libroot.so
#10 0x7003ffec in ?? ()
(gdb)


 [jdorje - Di. nov. 27 18:06:56 2007]:
 
 Can you kill it with a SEGV and get a backtrace?  Or run within gdb?
 
 And yeah, disabling sound might be wise...sound really shouldn't crash
 though.
 
 -jason
 
 


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


Re: [Freeciv-Dev] (PR#39947) 2.2-test more build errors with gcc 2.95.3

2007-12-04 Thread William Allen Simpson

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39947 

Jason Dorje Short wrote:
 Here's 2 separate patches for the 2 types of fixes.
 
Generally good patches, but partial revert of r14132 and r14133.

The original problem was the bad PR#34336 patch that inserted an if in
the middle of the initializers just before a comment.  Instead, use
conditional assignment.

Index: client/tilespec.c
===
--- client/tilespec.c   (revision 14135)
+++ client/tilespec.c   (working copy)
@@ -4208,28 +4208,24 @@
  const struct unit *punit, const struct city *pcity,
  const struct city *citymode)
 {
-  struct terrain *pterrain = NULL, *tterrain_near[8];
-  bv_special tspecial, tspecial_near[8];
   int tileno, dir;
+  bv_special tspecial;
+  bv_special tspecial_near[8];
+  struct terrain *tterrain_near[8];
+  struct terrain *pterrain = NULL;
   struct drawn_sprite *save_sprs = sprs;
   struct player *owner = NULL;
-  struct base_type *pbase = NULL;
-  bool do_draw_unit, solid_bg;
+  struct base_type *pbase = (ptile ? tile_get_base(ptile) : NULL);
+  /* Unit drawing is disabled when the view options are turned off,
+   * but only where we're drawing on the mapview. */
+  bool do_draw_unit = (punit  (draw_units || !ptile
+|| (draw_focus_unit
+ unit_is_in_focus(punit;
+  bool solid_bg = (solid_color_behind_units
+   (do_draw_unit
+  || (pcity  draw_cities)
+  || (ptile  !draw_terrain)));
 
-  if (ptile != NULL) {
-pbase = tile_get_base(ptile);
-  }
-
-  /* Unit drawing is disabled if the view options is turned off, but only
-   * if we're drawing on the mapview. */
-  do_draw_unit = (punit  (draw_units || !ptile
-   || (draw_focus_unit
-unit_is_in_focus(punit;
-  solid_bg = (solid_color_behind_units
-  (do_draw_unit
- || (pcity  draw_cities)
- || (ptile  !draw_terrain)));
-
   if (citymode) {
 int count = 0, i, cx, cy;
 const struct tile *const *tiles = NULL;
___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


Re: [Freeciv-Dev] (PR#39947) 2.2-test more build errors with gcc 2.95.3

2007-12-04 Thread William Allen Simpson

URL: http://bugs.freeciv.org/Ticket/Display.html?id=39947 

Committed S2_2 revision 14136.
Committed trunk revision 14137.



___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


Re: [Freeciv-Dev] (PR#30483) 2.1.0b2/Windows Mouse goto with Air units causes client crash

2007-12-04 Thread [EMAIL PROTECTED]

URL: http://bugs.freeciv.org/Ticket/Display.html?id=30483 

Jason Short wrote:
 URL: http://bugs.freeciv.org/Ticket/Display.html?id=30483 

 Is this still a problem?  Or have these goto bugs been fixed?

 -jason
   
It appears that this is still an issue, though I have yet to be able to 
test it on 2.1.1

Kevin



___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


Re: [Freeciv-Dev] (PR#16811) Issue tracking system for Freeciv

2007-12-04 Thread [EMAIL PROTECTED]

URL: http://bugs.freeciv.org/Ticket/Display.html?id=16811 

Daniel,

 If Bugzilla is indeed as easy to maintain as you say, I could volunteer
 to take responsibility for it.

 The question of hosting remains. AFAIK, four alternatives have been
 proposed over the years:

 freeciv.org
 sourceforge.net
 icculus.org
 seul.org

 Let's go through them:

 freeciv.org: Our own aging servers in Paul's basement. Are they up to
 the task? 
 sourceforge.net: The question was if bugzilla could run on SF.net webspace?
 icculus.org: IIRC, this was Per's contact. Status?
 seul.org: IIRC, this was Egor's contact. Status?

  ~Daniel
   

Bugzilla is pretty easy to administer these days.  You can try it out on
your own system if you'd like.  The installation guide is very good and
covers Linux well as well as Windows.  It requires: A web server
(preferrably Apache), a database server (preferrably MySQL), and Perl
(5.8.6 or greater IIRC).  One of the Bugzilla systems I manage at work
takes less than 200MB of disk with about 50,000 bugs and all its
associated data (attachments, code and templates included).  Bugzilla
has a tremendous reporting system and doing the queries you discussed in
your email 2-3 hours after this one are all well covered.  Users can
sign themselves up for Bugzilla if it is configured to allow it and it
now includes fairly good support for receiving emailed bug reports.

I strongly encourage giving it a try on your own system first.  Please
let me know if you need help.

Kevin



___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


Re: [Freeciv-Dev] (PR#16811) Issue tracking system for Freeciv

2007-12-04 Thread [EMAIL PROTECTED]

URL: http://bugs.freeciv.org/Ticket/Display.html?id=16811 

Daniel Markstedt wrote:
 URL: http://bugs.freeciv.org/Ticket/Display.html?id=16811 

   
 sourceforge.net: The question was if bugzilla could run on SF.net webspace?
   
 Would be nice.
 
As has already been mentioned - SF has its own issue tracking system.
 Disk Quota: Each project is provided 100MB of disk space for their
 usage. I'm quite sure the RT database ecxeeds that already. (
 http://sourceforge.net/docman/display_doc.php?docid=4297group_id=1#acceptable_use
 )

   
Why is that?  What is causing the the high disk space usage?
Attachments?  Issues (unlikely)?  Code?  Something else?
 icculus.org: IIRC, this was Per's contact. Status?
 seul.org: IIRC, this was Egor's contact. Status?
   
 Is that any better than freeciv.org?

 

 Dunno. Haven't yet seen their terms of use.

   
 What about GNA?

 

 If you mean the tracker, there was the problem that all projects use
 common bug numbering. If we were to import a database of tens of
 thousands of reports, it'd upset that system.

   
Bugzilla provides the ability to use an alias for a bug, so it wouldn't
be a problem to create FCRTissueid as an alias for those that want
to use the old issue numbers.  That makes it easy to move to from
system and not worry about renumbering.  JIRA uses numbering per-project
so the same is true there.

 

 To me the biggest issue is carrying over the bug database.  Not that
 this is a show-stopper since it's clear that RT is not going to last
 forever and the longer we wait the worst the problem there will get -
 but, as RT is a simple database and bugzilla (or whatever) is a simple
 database it really shouldn't be too hard to transfer the whole thing over.
 

Jason, I agree.  The good thing about Bugzilla is that it does have the
ability to import XML.  The question is, how to deal with the bug's
history.  So - before migrating to any system, I think it's fair to ask
- what are the requirements for data coming from the old system?  How
much of it must be carried over versus what parts can be left behind?  I
would have to assume that the RT system would be available for at least
a short period after a migration was completed at least so that old data
could still be looked up.

Typically, the way I've done migrations like these is to write an import
script that imports data from an existing system into the new system,
first from a backed-up copy for development and testing purposes, then
on migration day, from the live system.

Kevin




___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev