Ar an naoiú lá de mí Bealtaine, scríobh Friedrich Dominicus:
I promised that I try to get a trace back if Xemacs will crash
again. Here's such a crash, and this is the backtrace:
Thanks!
(gdb) where
#0 0x00002aaaac4cf727 in kill () from /lib/libc.so.6
#1 0x00000000004987aa in fatal_error_signal (sig=6) at emacs.c:3800
#2 <signal handler called>
#3 0x00002aaaac4cf465 in raise () from /lib/libc.so.6
#4 0x00002aaaac4d0c1e in abort () from /lib/libc.so.6
#5 0x00002aaaac506b46 in __libc_message () from /lib/libc.so.6
#6 0x00002aaaac50df6e in _int_free () from /lib/libc.so.6
#7 0x00002aaaac51169c in free () from /lib/libc.so.6
#8 0x00002aaaab7dc577 in XFreeModifiermap () from /usr/lib/libX11.so.6
#9 0x000000000060b108 in x_reset_modifier_mapping (d=0x107fe50)
at event-Xt.c:326
[...]
#30 0x000000000060b111 in x_reset_modifier_mapping (d=0x107fe50)
at event-Xt.c:328
x_reset_modifier_mapping getting called recursively appears to be the--which
is unexpected, are you really remapping your keyboard that often?
Anyway, try running with the following patch; if I understand the problem
correctly, it should solve it, but it may be that my understanding isn’t
correct.
--- src/event-Xt.c~ 2005-12-24 20:54:01.000000000 +0100
+++ src/event-Xt.c 2007-05-11 12:20:38.937500000 +0200
@@ -323,7 +323,14 @@
xd->lock_interpretation = 0;
if (xd->x_modifier_keymap)
- XFreeModifiermap (xd->x_modifier_keymap);
+ {
+ XFreeModifiermap (xd->x_modifier_keymap);
+ /* Set it to NULL in case we receive two MappingModifier events in a
+ row, and the second is processed during some CHECK_QUITs within
+ x_reset_key_mapping. If that happens, XFreeModifierMap will be
+ called twice on the same map, and we crash. */
+ xd->x_modifier_keymap = NULL;
+ }
x_reset_key_mapping (d);
--
On the quay of the little Black Sea port, where the rescued pair came once
more into contact with civilization, Dobrinton was bitten by a dog which was
assumed to be mad, though it may only have been indiscriminating. (Saki)
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-beta