Mercurial > hg > xemacs-beta
diff src/signal.c @ 2034:51e4a77ed447
[xemacs-hg @ 2004-04-19 14:39:45 by james]
Move QUIT checking down one level to catch QUITP and avoid catching uses of
QUIT that have already disabled checking.
author | james |
---|---|
date | Mon, 19 Apr 2004 14:39:49 +0000 |
parents | b531bf8658e9 |
children | 04bc9d2f42c7 |
line wrap: on
line diff
--- a/src/signal.c Mon Apr 19 11:26:04 2004 +0000 +++ b/src/signal.c Mon Apr 19 14:39:49 2004 +0000 @@ -436,10 +436,6 @@ code. */ #ifdef ERROR_CHECK_TRAPPING_PROBLEMS - assert_with_message - (proper_redisplay_wrapping_in_place (), - "QUIT called from within redisplay without being properly wrapped"); - /* When in a critical section, don't reset something_happened, so that every single QUIT will verify proper wrapping. (something_happened was set by enter_redisplay_critical_section() and will be reset @@ -982,6 +978,14 @@ if (quit_check_signal_happened) { +#ifdef ERROR_CHECK_TRAPPING_PROBLEMS + /* Since the code below can call Lisp, make sure that proper wrapping is + in place during redisplay. */ + assert_with_message + (proper_redisplay_wrapping_in_place (), + "QUIT called from within redisplay without being properly wrapped"); +#endif + /* Since arbitrary Lisp code may be executed (e.g. through a menu filter, see backtrace directly above), GC might happen, which would majorly fuck a lot of things, e.g. re_match()