emacs-pretest-bug
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: crash: memcpy, XChangeProperty, XSetTextProperty, XSetWMIconName, x_


From: Eli Zaretskii
Subject: Re: crash: memcpy, XChangeProperty, XSetTextProperty, XSetWMIconName, x_set_name_internal
Date: Mon, 05 Dec 2005 19:28:06 +0200

> From: Reiner Steib <address@hidden>
> Date: Mon, 05 Dec 2005 14:35:08 +0100
> Cc: address@hidden
> 
> On Sun, Dec 04 2005, Richard M. Stallman wrote:
> 
> >     (gdb) bt full
> >     #0  0x0000002a97462fe2 in memcpy () from /lib64/tls/libc.so.6
> >     No symbol table info available.
> >     #1  0x0000000000ec5898 in ?? ()
> >     No symbol table info available.
> >     #2  0x0000002a9709ece0 in XChangeProperty () from 
> > /usr/X11R6/lib64/libX11.so.6
> >     No symbol table info available.
> >     #3  0x0000002a970cb2f8 in XSetTextProperty () from 
> > /usr/X11R6/lib64/libX11.so.6
> >     No symbol table info available.
> >     #4  0x0000002a970cb32e in XSetWMIconName () from 
> > /usr/X11R6/lib64/libX11.so.6
> >     No symbol table info available.
> >     #5  0x00000000004c874e in x_set_name_internal (f=0x3563680, 
> > name=Variable "name" is not available.
> >
> > Can you please examine the arguments that were passed to
> > XSetWMIconName?  Are they all valid data?
> 
> The line in xfns.c is:
> 
>       XSetWMIconName (FRAME_X_DISPLAY (f), FRAME_OUTER_WINDOW (f), &icon);
> 
> (gdb) p f
> No symbol "f" in current context.
> (gdb) p icon
> No symbol "icon" in current context.
> (gdb) p &icon
> No symbol "icon" in current context.
> 
> If this information is not useful, please tell me the exact gdb
> commands I should use.

In what frame out of the 6 (#0 to #5) listed in the C backtrace did
you issue these print commands?  You need to issue them in the frame
#5, the one that calls XSetWMIconName; the GDB command to get there
from the place where the program stops due to the fatal signal is
"frame 5" or "up 5".

The backtrace seems to indicate that some of the arguments were
optimized away by GCC and not saved anywhere where GDB can find them.
So perhaps you will need to examine some other variables whose values
can give evidence about the arguments.  Alternatively (assuming you
can reproduce the crash), modify xfns.c to introduce temporary global
variables, declared `volatile' to avoid optimizations, and put the
argument values into them just before XSetWMIconName is called.  Then
you can examine those temporary variables in GDB (after getting to the
correct frame as explained above).




reply via email to

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