From a64ae2c1348f1471f4ae9c154dfa439d217335b0 Mon Sep 17 00:00:00 2001 From: ram <ram> Date: Fri, 11 Feb 1994 20:42:55 +0000 Subject: [PATCH] Some extra protection against recursive invocation of the windowing debugger. --- interface/debug.lisp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/interface/debug.lisp b/interface/debug.lisp index 753f70d39..873a67432 100644 --- a/interface/debug.lisp +++ b/interface/debug.lisp @@ -549,6 +549,10 @@ +;;; Used to prevent recursive invocations of the windowing debugger. +;;; +(defvar *in-windowing-debugger* nil) + ;;; INVOKE-DEBUGGER -- Public ;;; ;;; Invokes the Lisp debugger. It executes some common debugger setup code @@ -572,12 +576,13 @@ (*print-readably* nil) (*read-eval* t)) (if (or (not (use-graphics-interface)) + *in-windowing-debugger* (typep condition 'xti:toolkit-error)) (progn (format *error-output* "~2&~A~2&" *debug-condition*) (unless (typep condition 'step-condition) (show-restarts *debug-restarts* *error-output*)) (internal-debug)) - (progn + (let ((*in-windowing-debugger* t)) (write-line "Invoking debugger...") (invoke-motif-debugger condition))))) -- GitLab