[Freeciv-Dev] Re: (PR#3024) Crash when starting a 2nd game with client
[Top] [All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
Guest via RT wrote:
> I played a game and died early on. After death, I press End Turn twice
> until it was greyed out. I quit civserver and started a new game,
> leaving the civclient running. I reconnected the client, chose my
> nation, and when I pressed ok, I got a segmentation fault. It occurred
> right after the e_nation_selected message:
>
> 3: Neither of tags e_nation_selected or (null) found
> Segmentation fault (core dumped)
I can't seem to reproduce this on my debian unstable machine (even when
I set my character encoding to UTF-8).
> I tried the same situation (dying then connecting to a new game from the
> same client) twice more, and it crashed once. The core (1MB) is at
> http://kenn-michelle.ca:8080/freeciv/core2.gz,
The core is of no use without the original binary (not that I want to
use it, myself).
> but here is the (long)
> backtrace:
>
> (gdb) bt
> #0 0x40383092 in g_type_check_instance_is_a ()
> from /usr/lib/libgobject-2.0.so.0
> #1 0x0808bcc5 in races_by_name_callback (w=0x83ecde8, data=0x0)
> at dialogs.c:2064
dialogs.c:2064 doesn't seem to be the applicable line. Are you using an
unpatched, up-to-date CVS-version client?
> I'm using CVS from Feb 1, gtk2 client on Red Hat 8.
I wonder if it is coincidence that the nation dialog has character
encoding problems under red hat 8? Can you reproduce this with any nation?
More likely it has something to do with the sound code
(e_nation_selected is a sound event). What sound plugin are you using?
I still can't reproduce it, but when I leave and rejoin games with
using ESD sound I get messages like:
{ss} player for sample <01> not found
{ss} player for sample <01> not found
{ss} player for sample <01> not found
which doesn't seem like a good thing...
When I run gtk2-client under valgrind, I get the following when I first
select a nation:
==12809== Invalid read of size 4
==12809== at 0x80966EC: races_by_name_callback (dialogs.c:2048)
==12809== by 0x4057D7DC: g_cclosure_marshal_VOID__VOID (in
/usr/lib/libgobject-2.0.so.0.200.1)
==12809== by 0x4056D956: g_closure_invoke (in
/usr/lib/libgobject-2.0.so.0.200.1)
==12809== by 0x4057D406: (within /usr/lib/libgobject-2.0.so.0.200.1)
==12809== Address 0x41FBAC98 is 0 bytes inside a block of size 96 free'd
==12809== at 0x40046976: free
(/home/robbe/src/valgrind-1.0.4/vg_clientfuncs.c:180)
==12809== by 0x405BF356: g_free (in /usr/lib/libglib-2.0.so.0.200.1)
==12809== by 0x40581655: g_type_free_instance (in
/usr/lib/libgobject-2.0.so.0.200.1)
==12809== by 0x4056F419: (within /usr/lib/libgobject-2.0.so.0.200.1)
I'd have to run valgrind again with different parameters to get more of
a backtrace...and since it is very slow I won't do that now.
I also got two seemingly unrelated read errors (reported separately).
when I disconnect and connect to a new game I get no new messages (it is
possible that duplicate messages are suppressed).
jason
|
|