[Freeciv-Dev] [bug #17557] Max_Rates effect with tech requirement causes assert failure

2011-01-26 Thread Matthias Pfafferodt

Update of bug #17557 (project freeciv):

  Status:  Ready For Test = Fixed  
 Open/Closed:Open = Closed 


___

Reply to this item at:

  http://gna.org/bugs/?17557

___
  Nachricht geschickt von/durch Gna!
  http://gna.org/


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


[Freeciv-Dev] [bug #17557] Max_Rates effect with tech requirement causes assert failure

2011-01-24 Thread Marko Lindqvist

Follow-up Comment #2, bug #17557 (project freeciv):

 does the attached patch fixes the problem?

Yes, assert failure has gone.

___

Reply to this item at:

  http://gna.org/bugs/?17557

___
  Message sent via/by Gna!
  http://gna.org/


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


[Freeciv-Dev] [bug #17557] Max_Rates effect with tech requirement causes assert failure

2011-01-23 Thread Marko Lindqvist

URL:
  http://gna.org/bugs/?17557

 Summary: Max_Rates effect with tech requirement causes
assert failure
 Project: Freeciv
Submitted by: cazfi
Submitted on: Mon 24 Jan 2011 02:17:25 AM EET
Category: general
Severity: 3 - Normal
Priority: 5 - Normal
  Status: None
 Assigned to: None
Originator Email: 
 Open/Closed: Open
 Release: 
 Discussion Lock: Any
Operating System: None
 Planned Release: 2.3.0

___

Details:

I'm updating alien ruleset to 2.3 era. I'm getting this assert failure with
it:
common/team.c::393]: assertion '((void *)0) != pteam' failed.

and bactrace when running with -F:

Program received signal SIGABRT, Aborted.
0x77bd1e2b in raise (sig=value optimized out)
at ../nptl/sysdeps/unix/sysv/linux/pt-raise.c:42
42  ../nptl/sysdeps/unix/sysv/linux/pt-raise.c: No such file or directory.
in ../nptl/sysdeps/unix/sysv/linux/pt-raise.c
(gdb) bt
#0  0x77bd1e2b in raise (sig=value optimized out)
at ../nptl/sysdeps/unix/sysv/linux/pt-raise.c:42
#1  0x005fd77e in fc_assert_fail (
file=0x6a1e08 ../../../src.patched/common/team.c, 
function=0x6a20b5 team_number, line=393, 
assertion=0x6a1f61 ((void *)0) != pteam, message=0x0)
at ../../../src.patched/utility/log.c:476
#2  0x005dd52e in team_number (pteam=0x0)
at ../../../src.patched/common/team.c:393
#3  0x005dc075 in player_research_get (pplayer=0x11ad640)
at ../../../src.patched/common/research.c:66
#4  0x005ddc67 in player_invention_state (pplayer=0x11ad640,
tech=35)
at ../../../src.patched/common/tech.c:127
#5  0x005dab64 in is_tech_in_range (target_player=0x11ad640, 
range=REQ_RANGE_PLAYER, tech=35, prob_type=RPT_CERTAIN)
at ../../../src.patched/common/requirements.c:674
#6  0x005db0f4 in is_req_active (target_player=0x11ad640,
target_city=0x0, 
target_building=0x0, target_tile=0x0, target_unittype=0x0,
target_output=0x0, 
target_specialist=0x0, req=0x111b4c0, prob_type=RPT_CERTAIN)
at ../../../src.patched/common/requirements.c:960
#7  0x0053a028 in is_effect_enabled (target_player=0x11ad640,
target_city=0x0, 
target_building=0x0, target_tile=0x0, target_unittype=0x0,
target_output=0x0, 
target_specialist=0x0, peffect=0x111b560, prob_type=RPT_CERTAIN)
at ../../../src.patched/common/effects.c:507
#8  0x0053a0ab in is_effect_active (target_player=0x11ad640,
target_city=0x0, 
target_building=0x0, target_tile=0x0, target_unittype=0x0,
target_output=0x0, 
target_specialist=0x0, peffect=0x111b560, prob_type=RPT_CERTAIN)
at ../../../src.patched/common/effects.c:537
#9  0x0053a48f in get_target_bonus_effects (plist=0x0, 
target_player=0x11ad640, target_city=0x0, target_building=0x0,
target_tile=0x0, 
target_unittype=0x0, target_output=0x0, target_specialist=0x0, 
effect_type=EFT_MAX_RATES) at ../../../src.patched/common/effects.c:662
#10 0x0053a58e in get_player_bonus (pplayer=0x11ad640, 
effect_type=EFT_MAX_RATES) at ../../../src.patched/common/effects.c:702
#11 0x005d86de in player_limit_to_max_rates (pplayer=0x11ad640)
at ../../../src.patched/common/player.c:1029
#12 0x005d78a6 in player_defaults (pplayer=0x11ad640)
at ../../../src.patched/common/player.c:514
#13 0x005d7697 in player_new (pslot=0xb1a6f8)
at ../../../src.patched/common/player.c:466
#14 0x00481dda in server_create_player (player_id=-1, 
ai_type=0x63f498 default) at
../../../src.patched/server/plrhand.c:1115
#15 0x0040fd64 in aifill (amount=5)
at ../../../src.patched/server/srv_main.c:1812
#16 0x00412268 in srv_main () at
../../../src.patched/server/srv_main.c:2557
#17 0x00406737 in main (argc=4, argv=0x7fffe208)
at ../../../src.patched/server/civserver.c:393

I think reason is these kind of effects I have:

[effect_new_frontier]
name= Max_Rates
value   = 10
reqs=
{ type, name, range
  Tech, New Frontier, Player
}

This causes team research information to be accessed when initial rates are
set according to max rates before team information is set.

In S2_2 this effect causes no problems.




___

Reply to this item at:

  http://gna.org/bugs/?17557

___
  Message sent via/by Gna!
  http://gna.org/


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