Complete.Org: Mailing Lists: Archives: freeciv-dev: September 2005:
[Freeciv-Dev] Re: (PR#14075) server crash
Home

[Freeciv-Dev] Re: (PR#14075) server crash

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
Subject: [Freeciv-Dev] Re: (PR#14075) server crash
From: "Christian Knoke" <chrisk@xxxxxxxxx>
Date: Thu, 22 Sep 2005 03:00:26 -0700
Reply-to: bugs@xxxxxxxxxxx

<URL: http://bugs.freeciv.org/Ticket/Display.html?id=14075 >

On Wed, Sep 21, 2005 at 10:02:35PM -0700, Jason Short wrote:
> 
> This backtrace isn't enough to track the bug, but the core file might
> have enough info.  Make sure you hold onto it - and to the original
> civserver binary that created it (you could upload both to this ticket;
> *maybe* they'd be usable on my system).

Being done.

> Can you try in gdb:
> 
> select 0
> p leader->tile
> p *leader->tile
> p map.tiles[leader->tile->index]
> p near_tile
> p *near_tile
> p map
> 
> If it doesn't let you access 'leader' then try 'select 1' and use
> 'punit' instead of 'leader'.

I hope I got it right:

(gdb) select 0
(gdb) p leader->tile
$1 = (struct tile *) 0x65726168
(gdb) p *leader->tile
Cannot access memory at address 0x65726168
(gdb) p map.tiles[leader->tile->index]
Cannot access memory at address 0x65726178
(gdb) p near_tile
$2 = (struct tile *) 0x1
(gdb) p near_tile
$3 = (struct tile *) 0x1
(gdb) p *near_tile
Cannot access memory at address 0x1
(gdb) p map
$4 = {topology_id = 1, valid_dirs = {DIR8_NORTHWEST, DIR8_NORTH,
DIR8_NORTHEAST, DIR8_WEST, DIR8_EAST,
    DIR8_SOUTHWEST, DIR8_SOUTH, DIR8_SOUTHEAST}, cardinal_dirs =
{DIR8_NORTH, DIR8_WEST, DIR8_EAST, DIR8_SOUTH,
    DIR8_NORTHWEST, DIR8_NORTHWEST, DIR8_NORTHWEST, DIR8_NORTHWEST},
num_valid_dirs = 8, num_cardinal_dirs = 4,
  iterate_outwards_indices = 0x85ece80, num_iterate_outwards_indices = 8034,
size = 4, xsize = 78, ysize = 52,
  seed = 2010240340, riches = 250, huts = 50, landpercent = 30, generator =
1, startpos = 0, tinyisles = false,
  separatepoles = true, alltemperate = false, temperature = 50, wetness =
50, steepness = 30,
  num_start_positions = 0, have_specials = true, have_huts = false,
have_rivers_overlay = false,
  num_continents = 16, num_oceans = 1, tiles = 0x84b7850, start_positions =
0x0}
(gdb) select 1
(gdb) p punit->tile
$5 = (struct tile *) 0x84edbbc
(gdb) p *punit->tile
$6 = {x = 35, y = 47, nat_x = 35, nat_y = 47, index = 3701, terrain =
0x820c09c, special = {vec = "\000"},
  city = 0x0, units = 0x8530e48, tile_known = {vec = " \000\000"}, tile_seen
= {vec = " \000\000"}, worked = 0x0,
  continent = -1, owner = 0x0, spec_sprite = 0x0}
(gdb) p map.tiles[punit->tile->index]
$7 = {x = 35, y = 47, nat_x = 35, nat_y = 47, index = 3701, terrain =
0x820c09c, special = {vec = "\000"},
  city = 0x0, units = 0x8530e48, tile_known = {vec = " \000\000"}, tile_seen
= {vec = " \000\000"}, worked = 0x0,
  continent = -1, owner = 0x0, spec_sprite = 0x0}

-- 
Christian Knoke            * * *            http://cknoke.de
* * * * * * * * *  Ceterum censeo Microsoft esse dividendum.





[Prev in Thread] Current Thread [Next in Thread]