APPROVE COMMIT 21.5
RECOMMEND 21.4 -- note that the implementation of error trapping is
different in 21.5, I think so this may not behave the same way. If
you specifically want this patch, Vin, let me know and I'll
investigate the exact situation in 21.4.
This ended up being two commits because I forgot the ChangeLog. I
really wish we were using git....
diff -r fd2495d78aac src/ChangeLog
--- a/src/ChangeLog Mon Jul 27 01:29:49 2009 +0900
+++ b/src/ChangeLog Mon Jul 27 01:47:01 2009 +0900
＠＠ -0,0 +1,4 ＠＠
+2009-07-27 Stephen J. Turnbull <stephen(a)xemacs.org>
+ * eval.c (debug-on-error): Document interaction with process filters.
diff -r 79d1a0524b5f -r f8d7d8202635 src/eval.c
--- a/src/eval.c Sun Jul 26 19:58:40 2009 +0900
+++ b/src/eval.c Mon Jul 27 01:18:47 2009 +0900
＠＠ -6732,6 +6732,11 ＠＠
This variable is overridden by `debug-ignored-errors'.
See also variables `debug-on-quit' and `debug-on-signal'.
+Process filters are considered to be outside of condition-case forms
+(unless contained in the process filter itself). To prevent the
+debugger from being called from a process filter, use a list value, or
+put the expected error\(s) in `debug-ignored-errors'.
If this variable is set while XEmacs is running noninteractively (using
`-batch'), and XEmacs was configured with `--debug' (#define XEMACS_DEBUG
in the C code), instead of trying to invoke the Lisp debugger (which
XEmacs-Patches mailing list