<URL: http://bugs.freeciv.org/Ticket/Display.html?id=40175 >
S2_2 & TRUNK:
leader_name is temporary variable set only when !player->created, but
it was used always.
Fix attached.
...
S2_1 code differs from S2_2 & TRUNK. It seems that some earlier
bugfix is missing.
- ML
diff -Nurd -X.diff_ignore freeciv/server/srv_main.c freeciv/server/srv_main.c
--- freeciv/server/srv_main.c 2008-03-19 04:30:55.000000000 +0200
+++ freeciv/server/srv_main.c 2008-03-30 19:10:09.000000000 +0300
@@ -1657,8 +1657,6 @@
**************************************************************************/
static void generate_players(void)
{
- char leader_name[MAX_LEN_NAME];
-
/* Select nations for AI players generated with server
* 'create <name>' command
*/
@@ -1694,12 +1692,15 @@
/* don't change the name of a created player */
if (!pplayer->was_created) {
+ char leader_name[MAX_LEN_NAME];
+
pick_random_player_name(nation_of_player(pplayer), leader_name);
sz_strlcpy(pplayer->name, leader_name);
}
- if (check_nation_leader_name(nation_of_player(pplayer), leader_name)) {
- pplayer->is_male = get_nation_leader_sex(nation_of_player(pplayer), leader_name);
+ if (check_nation_leader_name(nation_of_player(pplayer), pplayer->name)) {
+ pplayer->is_male = get_nation_leader_sex(nation_of_player(pplayer),
+ pplayer->name);
} else {
pplayer->is_male = (myrand(2) == 1);
}
_______________________________________________
Freeciv-dev mailing list
[email protected]
https://mail.gna.org/listinfo/freeciv-dev