URL:
<http://gna.org/bugs/?19341>
Summary: Crash at entering to the Ltex23 longturn game.
Project: Freeciv
Submitted by: o01eg
Submitted on: Сбт 28 Янв 2012 14:45:57
Category: client-gtk-2.0
Severity: 5 - Blocker
Priority: 5 - Normal
Status: None
Assigned to: None
Originator Email:
Open/Closed: Open
Release: 2.3.1
Discussion Lock: Any
Operating System: GNU/Linux
Planned Release:
_______________________________________________________
Details:
When I connect to longturn game I get crash with gtk2 client. SDL client
isn't affected.
Here data from gdb:
Program received signal SIGSEGV, Segmentation fault.
0x000000000057c8c0 in num_continent_buildings (pplayer=0x902ddc0,
continent=77, building=0x84f2c0) at requirements.c:566
566 if (pcity && tile_continent(pcity->tile) == continent) {
(gdb) bt full
#0 0x000000000057c8c0 in num_continent_buildings (pplayer=0x902ddc0,
continent=77, building=0x84f2c0) at requirements.c:566
pcity = 0x9f5c9d0
__FUNCTION__ = "num_continent_buildings"
#1 0x000000000057ca5e in count_buildings_in_range (target_player=0x902ddc0,
target_city=0x9ef6010, target_building=0x84bb40,
range=REQ_RANGE_CONTINENT, survives=false, source=0x84f2c0)
at requirements.c:636
continent = 77
__FUNCTION__ = "count_buildings_in_range"
#2 0x000000000057d139 in is_req_active (target_player=0x902ddc0,
target_city=0x9ef6010, target_building=0x84bb40, target_tile=0x0,
target_unittype=0x0, target_output=0x0, target_specialist=0x0,
req=0x8f28340, prob_type=RPT_CERTAIN) at requirements.c:972
eval = false
__FUNCTION__ = "is_req_active"
#3 0x00000000004e9692 in is_effect_enabled (target_player=0x902ddc0,
target_city=0x9ef6010, target_building=0x84bb40, target_tile=0x0,
target_unittype=0x0, target_output=0x0, target_specialist=0x0,
peffect=0x8f28280, prob_type=RPT_CERTAIN) at effects.c:634
preq_iter = 0x0
preq = 0x8f28340
#4 0x00000000004e9715 in is_effect_active (target_player=0x902ddc0,
target_city=0x9ef6010, target_building=0x84bb40, target_tile=0x0,
target_unittype=0x0, target_output=0x0, target_specialist=0x0,
peffect=0x8f28280, prob_type=RPT_CERTAIN) at effects.c:664
No locals.
#5 0x00000000004e9a3c in get_target_bonus_effects (plist=0x0,
target_player=0x902ddc0, target_city=0x9ef6010, target_building=0x84bb40,
target_tile=0x0, target_unittype=0x0, target_output=0x0,
target_specialist=0x0, effect_type=EFT_UPKEEP_FREE) at effects.c:784
peffect_iter = 0x0
peffect = 0x8f28280
bonus = 0
#6 0x00000000004e9fef in get_building_bonus (pcity=0x9ef6010,
building=0x84bb40, effect_type=EFT_UPKEEP_FREE) at effects.c:931
__FUNCTION__ = "get_building_bonus"
#7 0x00000000004dfdf5 in city_improvement_upkeep (pcity=0x9ef6010,
b=0x84bb40)
at city.c:1137
upkeep = 2
#8 0x00000000004dfca7 in city_total_impr_gold_upkeep (pcity=0x9ef6010)
at city.c:1082
pimprove = 0x84bb40
gold_needed = 0
#9 0x000000000057a8f5 in player_get_expected_income (pplayer=0x902ddc0)
at player.c:999
pcity_iter = 0x0
pcity = 0x9ef6010
income = 20
#10 0x0000000000470598 in get_info_label_text (moreinfo=false) at text.c:884
str = {
_private_str_ = 0x9f378f0 "Население: 210 000\nГод:
740 AD (T137)", _private_n_ = 51, _private_n_alloc_ = 70}
#11 0x00000000004aa7a0 in update_info_label () at mapview.c:139
label = 0x2461350
pplayer = 0x902ddc0
#12 0x000000000045dc67 in handle_city_info (packet=0x9f36640) at
packhand.c:754
product = {value = {advance = 0x84c8c0, govern = 0x84c8c0,
building = 0x84c8c0, nation = 0x84c8c0, specialist = 0x84c8c0,
terrain = 0x84c8c0, uclass = 0x84c8c0, utype = 0x84c8c0,
base = 0x84c8c0, ai_level = 8702144, citytile = 8702144,
minsize = 8702144, minyear = 8702144, outputtype = 8702144,
terrainclass = 8702144, terrainalter = 8702144, special =
8702144,
unitclassflag = 8702144, unitflag = 8702144},
kind = VUT_IMPROVEMENT}
caravan_city_id = 0
i = 4
popup = false
city_is_new = true
city_has_changed_owner = false
need_science_dialog_update = true
need_units_dialog_update = false
need_economy_dialog_update = true
name_changed = true
update_descriptions = true
shield_stock_changed = true
production_changed = true
trade_routes_changed = false
pfocus_units = 0x43062a0
pcity = 0x9ef6010
worked_tiles = 0x0
pcenter = 0x95f1bb8
ptile = 0x95f1bb8
powner = 0x902ddc0
__FUNCTION__ = "handle_city_info"
#13 0x0000000000464a5f in client_handle_packet (type=PACKET_CITY_INFO,
packet=0x9f36640) at packhand_gen.c:99
No locals.
#14 0x0000000000433db4 in client_packet_input (packet=0x9f36640, type=31)
at client_main.c:573
__FUNCTION__ = "client_packet_input"
#15 0x0000000000439770 in input_from_server (fd=17) at clinet.c:419
result = true
packet = 0x9f36640
type = PACKET_CITY_INFO
nb = 477
__FUNCTION__ = "input_from_server"
#16 0x0000000000417692 in get_net_input (data=0x0, fid=17,
condition=GDK_INPUT_READ) at gui_main.c:1873
No locals.
#17 0x00007ffff697608f in ?? () from /usr/lib64/libgdk-x11-2.0.so.0
No symbol table info available.
#18 0x00007ffff43cf102 in g_main_context_dispatch ()
from /usr/lib64/libglib-2.0.so.0
No symbol table info available.
#19 0x00007ffff43cf8f8 in ?? () from /usr/lib64/libglib-2.0.so.0
No symbol table info available.
#20 0x00007ffff43cfe4a in g_main_loop_run () from
/usr/lib64/libglib-2.0.so.0
No symbol table info available.
#21 0x00007ffff6d41a67 in gtk_main () from /usr/lib64/libgtk-x11-2.0.so.0
No symbol table info available.
#22 0x0000000000417195 in ui_main (argc=1, argv=0x7fffffffd888)
at gui_main.c:1667
home = 0xbcefc0 "/home/o01eg"
sig = 29
__FUNCTION__ = "ui_main"
#23 0x0000000000433c7d in client_main (argc=1, argv=0x7fffffffd888)
at client_main.c:516
i = 1
loglevel = LOG_NORMAL
ui_options = 0
ui_separator = false
option = 0x0
user_tileset = false
fatal_assertions = -1
__FUNCTION__ = "client_main"
#24 0x0000000000416ad1 in main (argc=1, argv=0x7fffffffd888) at
gui_main.c:1504
No locals.
(gdb) p (*pcity)
$2 = {name = "006517", '\000' <repeats 41 times>, tile = 0x0,
owner = 0x902ddc0, original = 0x902ddc0, id = 6517, size = 1, feel = {{0,
0,
0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}},
specialists = {1, 0 <repeats 19 times>}, trade = {0, 0, 0, 0},
trade_value = {0, 0, 0, 0}, tile_cache = 0x0, tile_cache_radius_sq = -1,
surplus = {0, 0, 0, 0, 0, 0}, waste = {0, 0, 0, 0, 0, 0}, unhappy_penalty =
{
0, 0, 0, 0, 0, 0}, prod = {0, 0, 0, 0, 0, 0}, citizen_base = {0, 0, 0, 0,
0, 0}, usage = {0, 0, 0, 0, 0, 0}, bonus = {100, 100, 100, 100, 100,
100},
martial_law = 0, unit_happy_upkeep = 0, food_stock = 0, shield_stock = 0,
pollution = 0, illness_trade = 0, turn_plague = -1, city_radius_sq = 15,
airlift = 0, did_buy = true, did_sell = false, was_happy = false,
anarchy = 0, rapture = 0, turn_founded = 137, turn_last_built = 137,
before_change_shields = 0, caravan_shields = 0, disbanded_shields = 0,
last_turns_shield_surplus = 0, built = {{turn = -1} <repeats 200 times>},
production = {value = {advance = 0x0, govern = 0x0, building = 0x0,
nation = 0x0, specialist = 0x0, terrain = 0x0, uclass = 0x0,
utype = 0x0, base = 0x0, ai_level = 0, citytile = CITYT_CENTER,
minsize = 0, minyear = 0, outputtype = O_FOOD, terrainclass = 0,
terrainalter = 0, special = 0, unitclassflag = 0, unitflag = 0},
kind = VUT_NONE}, changed_from = {value = {advance = 0x0, govern = 0x0,
building = 0x0, nation = 0x0, specialist = 0x0, terrain = 0x0,
uclass = 0x0, utype = 0x0, base = 0x0, ai_level = 0,
citytile = CITYT_CENTER, minsize = 0, minyear = 0, outputtype = O_FOOD,
---Type <return> to continue, or q <return> to quit---
terrainclass = 0, terrainalter = 0, special = 0, unitclassflag = 0,
unitflag = 0}, kind = VUT_NONE}, worklist = {length = 0, entries = {{
value = {advance = 0x0, govern = 0x0, building = 0x0, nation = 0x0,
specialist = 0x0, terrain = 0x0, uclass = 0x0, utype = 0x0,
base = 0x0, ai_level = 0, citytile = CITYT_CENTER, minsize = 0,
minyear = 0, outputtype = O_FOOD, terrainclass = 0,
terrainalter = 0, special = 0, unitclassflag = 0, unitflag = 0},
kind = VUT_NONE} <repeats 64 times>}}, city_options = {vec = ""},
units_supported = 0x9f2c880, {server = {migration_score = 0,
mgr_score_calc_turn = 0, illness = 0, steal = 0,
workers_frozen = 166906032, needs_arrange = false,
needs_refresh = false, synced = false, debug = false, adv = 0x9f17b30,
ais = {0x0}, vision = 0x0}, client = {occupied = false, walls = false,
happy = false, unhappy = false, colored = false, color_index = 0,
info_units_supported = 0x9f2c8b0, info_units_present = 0x9f17b30,
need_updates = CU_NO_UPDATE}}}
(gdb) p pcity->tile
$3 = (struct tile *) 0x0
(gdb) p (*pplayer)
$5 = {slot = 0x43002f0, name = "O01eg", '\000' <repeats 42 times>,
username = "o01eg\000gned", '\000' <repeats 37 times>,
ranked_username = "Unassigned", '\000' <repeats 37 times>, user_turns = 0,
is_male = true, government = 0x43a65a0, target_government = 0x0,
nation = 0x43dc6b8, team = 0x43a46f0, is_ready = false, phase_done = false,
nturns_idle = 0, is_alive = true, revolution_finishes = -1, real_embassy =
{
vec = '\000' <repeats 15 times>}, diplstates = 0x904f4b0, city_style = 6,
cities = 0x8f2e220, units = 0x8f2e250, score = {happy = 0, content = 0,
unhappy = 0, angry = 0, specialists = {0 <repeats 20 times>}, wonders =
0,
techs = 0, techout = 0, landarea = 0, settledarea = 0, population = 0,
cities = 0, units = 0, pollution = 0, literacy = 0, bnp = 0, mfg = 0,
spaceship = 0, units_built = 0, units_killed = 0, units_lost = 0,
game = 160}, economic = {gold = 19331, tax = 40, science = 60,
luxury = 0}, bulbs_last_turn = 97, spaceship = {structurals = 0,
components = 0, modules = 0, structure = {false <repeats 32 times>},
fuel = 0, propulsion = 0, habitation = 0, life_support = 0,
solar_panels = 0, state = SSHIP_NONE, launch_year = 9999, population = 0,
mass = 0, support_rate = 0, energy_rate = 0, success_rate = 0,
travel_time = 0}, ai_controlled = false, ai_common = {maxbuycost = 0,
tech_want = {0 <repeats 201 times>}, handicaps = {vec = "\000"},
skill_level = 0, fuzzy = 0, expand = 100, science_cost = 100, warmth = 0,
frost = 0, barbarian_type = NOT_A_BARBARIAN, love = {
1 <repeats 128 times>}}, ai = 0x0, was_created = false,
---Type <return> to continue, or q <return> to quit---
is_connected = true, current_conn = 0x0, connections = 0x8f2e280,
gives_shared_vision = {vec = '\000' <repeats 15 times>}, wonders = {
0 <repeats 41 times>, 6517, 0, 0, 0, 0, 0, 6517, 0 <repeats 152 times>},
attribute_block = {data = 0x9048a30, length = 163},
attribute_block_buffer = {data = 0x0, length = 0}, tile_known = {
bits = 84240, vec = 0x9ec63e0 ""}, {server = {status = {vec = "\020"},
capital = 73, private_map = 0x9ec1180, really_gives_vision = {
vec = "\020I\001\000\000\000\000\000\260:\354\t\000\000\000"},
debug = {vec = ""}, aidata = 0x0}, client = {tile_vision = {{
bits = 84240, vec = 0x9ec1180 ""}, {bits = 84240,
vec = 0x9ec3ab0 ""}}}}}
(gdb) p (*building)
$6 = {item_number = 41, name = {
_private_translated_ = 0x7ffff7f454c8 "Компания Aдама
Смита", _private_vernacular_ = "A.Smith's Trading Co.", '\000' <repeats
26 times>,
_private_rulename_ = "A.Smith's Trading Co.", '\000' <repeats 26 times>},
graphic_str = "b.asmiths_trading_co", '\000' <repeats 27 times>,
graphic_alt = "-", '\000' <repeats 46 times>, reqs = {p = 0x73b98e0,
size = 1, size_alloc = 1}, obsolete_by = 0x0, replaced_by = 0x0,
build_cost = 300, upkeep = 0, sabotage = 0, genus = IG_SMALL_WONDER,
flags = {vec = ""}, helptext = 0x73b9900,
soundtag = "w_asmiths_trading_co", '\000' <repeats 27 times>,
soundtag_alt = "w_generic", '\000' <repeats 38 times>, allows_units =
false}
_______________________________________________________
Reply to this item at:
<http://gna.org/bugs/?19341>
_______________________________________________
Message sent via/by Gna!
http://gna.org/
_______________________________________________
Freeciv-dev mailing list
[email protected]
https://mail.gna.org/listinfo/freeciv-dev