[ Alexandre, are you reading xemacs-beta?
this crash occurs with the latest 21.1 version in CVS, i.e. including
your patch <orbt8826hb.fsf(a)garnize.lsd.ic.unicamp.br> ]
Gunnar Evermann <ge204(a)eng.cam.ac.uk> writes:
#0 XtInitializeWidgetClass () at Create.c:95
#1 0x4096274 in xtWidgetAlloc () at Create.c:260
#2 0x4096550 in xtCreate () at Create.c:349
#3 0x409710c in _XtCreatePopupShell () at Create.c:660
#4 0x4097174 in XtCreatePopupShell () at Create.c:695
#5 0x677490 in x_create_widgets (f=0x10252600, lisp_window_id=-1609027580,
parent=-1609027580)
at /home/tigger3/ge204/src/XEmacs/21-1/xemacs/src/frame-x.c:1952
OK, I have looked a bit closer at this and now I could use some help.
first of all this X crash is indeed a dumping problem. run-temacs
works fine even under X.
All the following info is gleamed from a debug build on
IRIX64 ruby 6.2 06101031 IP28 mips
with gcc version 2.7.2.3 linking against X11R6.4 and NOT using motif.
The phenomenon of temacs working and xemacs crashing is the same on
the IRIX6.5/SGIcc build mentioned previously.
The crash occurs in X11R6.4's XtInitializeWidgetClass() at the
following place:
-----
XtInitializeWidgetClass(wc)
WidgetClass wc;
{
[...snip by ge...]
WidgetClass pc;
#define LeaveIfClass(c, d) if (pc == c) { inited = d; break; }
for (pc = wc; pc; pc = pc->core_class.superclass)
------
the wc is actually our topLevelEmacsShellClassRec.
In temacs directly before calling unexec it looks like this:
$1 = {core_class = {superclass = 0x40ebcf4, class_name = 0x101285e0
"TopLevelEmacsShell",
...
even after unexec() finishes it's the same. Now if I use 'gdb xemacs'
and then immediately (i.e. before running) print it again it's still
the same. Now I put a breakpoint at main() and 'run -vanilla' and it
has changed to:
$2 = {core_class = {superclass = 0xa81dbcf4, class_name = 0x101285e0
"TopLevelEmacsShell",
...
i.e. the first two bytes were overwritten!
As I have no clue what exactly is happening when a program is
loaded/started I would appreciate some hints from the experts :-)
Feel free to request more info or to provide instructions what to
check.
Please note that we have received a couple of reports of similar
crashes (i.e. same C backtrace) from people using Solaris 7.
Gunnar