On Wed, Feb 27, 2008 at 9:27 AM, Stephen J. Turnbull <stephen(a)xemacs.org> wrote:
Thomas Mittelstaedt writes:
> #5 0x10004708 in assert_failed (file=0x10337e10 "signal.c", line=730,
> expr=0x10337ed4 "QUIT called from within redisplay without being
> properly wrapped") at emacs.c:3987
This looks like an XEmacs bug.
In protected_menu_item_descriptor_to_widget_value (menubar-x.c), we
explicitly pass the UNINHIBIT_QUIT flag. The comment above that
function says that we "need to reenable quit checking, which was
disabled by next_event_internal() so as to read C-g as an event".
However, when we do read C-g as an event, we get this crash. I don't
see a way to fix this without immediately undoing all this work to
inhibit QUIT again. So the radical solution to this problem is to
change that flag to INHIBIT_QUIT, which means C-g will not break you
out of a menu browse gone bad. I don't see a less radical solution
right now, although I'll think on it some more.
XEmacs-Beta mailing list