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.
0x00007ffff7bd1e2b 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  0x00007ffff7bd1e2b in raise (sig=<value optimized out>)
    at ../nptl/sysdeps/unix/sysv/linux/pt-raise.c:42
#1  0x00000000005fd77e 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  0x00000000005dd52e in team_number (pteam=0x0)
    at ../../../src.patched/common/team.c:393
#3  0x00000000005dc075 in player_research_get (pplayer=0x11ad640)
    at ../../../src.patched/common/research.c:66
#4  0x00000000005ddc67 in player_invention_state (pplayer=0x11ad640,
tech=35)
    at ../../../src.patched/common/tech.c:127
#5  0x00000000005dab64 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  0x00000000005db0f4 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  0x000000000053a028 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  0x000000000053a0ab 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  0x000000000053a48f 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 0x000000000053a58e in get_player_bonus (pplayer=0x11ad640, 
    effect_type=EFT_MAX_RATES) at ../../../src.patched/common/effects.c:702
#11 0x00000000005d86de in player_limit_to_max_rates (pplayer=0x11ad640)
    at ../../../src.patched/common/player.c:1029
#12 0x00000000005d78a6 in player_defaults (pplayer=0x11ad640)
    at ../../../src.patched/common/player.c:514
#13 0x00000000005d7697 in player_new (pslot=0xb1a6f8)
    at ../../../src.patched/common/player.c:466
#14 0x0000000000481dda in server_create_player (player_id=-1, 
    ai_type=0x63f498 "default") at
../../../src.patched/server/plrhand.c:1115
#15 0x000000000040fd64 in aifill (amount=5)
    at ../../../src.patched/server/srv_main.c:1812
#16 0x0000000000412268 in srv_main () at
../../../src.patched/server/srv_main.c:2557
#17 0x0000000000406737 in main (argc=4, argv=0x7fffffffe208)
    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

Reply via email to