[slime-cvs] CVS slime

heller heller at common-lisp.net
Mon Aug 11 07:36:55 UTC 2008


Update of /project/slime/cvsroot/slime
In directory clnet:/tmp/cvs-serv17883

Modified Files:
	ChangeLog swank.lisp 
Log Message:
* swank.lisp (invoke-slime-debugger): New function.
Analagous to cl:invoke-debugger.
(swank-debugger-hook): Use it.

--- /project/slime/cvsroot/slime/ChangeLog	2008/08/09 19:57:37	1.1428
+++ /project/slime/cvsroot/slime/ChangeLog	2008/08/11 07:36:52	1.1429
@@ -1,3 +1,9 @@
+2008-08-10  Helmut Eller  <heller at common-lisp.net>
+
+	* swank.lisp (invoke-slime-debugger): New function.
+	Analagous to cl:invoke-debugger.
+	(swank-debugger-hook): Use it.
+
 2008-08-09  Helmut Eller  <heller at common-lisp.net>
 
 	* slime.el (slime-quit-lisp): Optionally send kill signal.
--- /project/slime/cvsroot/slime/swank.lisp	2008/08/09 19:57:22	1.560
+++ /project/slime/cvsroot/slime/swank.lisp	2008/08/11 07:36:52	1.561
@@ -22,6 +22,7 @@
            #:ed-in-emacs
            #:inspect-in-emacs
            #:print-indentation-lossage
+           #:invoke-slime-debugger
            #:swank-debugger-hook
            #:emacs-inspect
            ;;#:inspect-slot-for-emacs
@@ -1986,23 +1987,25 @@
 
 ;;;; Debugger
 
-(defun swank-debugger-hook (condition hook)
-  "Debugger function for binding *DEBUGGER-HOOK*.
-Sends a message to Emacs declaring that the debugger has been entered,
+(defun invoke-slime-debugger (condition)
+  "Sends a message to Emacs declaring that the debugger has been entered,
 then waits to handle further requests from Emacs. Eventually returns
 after Emacs causes a restart to be invoked."
-  (declare (ignore hook))
   (without-slime-interrupts
-    (restart-case 
-        (cond (*emacs-connection*
-               (debug-in-emacs condition))
-              ((default-connection)
-               (with-connection ((default-connection))
-                 (debug-in-emacs condition))))
-      (default-debugger (&optional v)
-        :report "Use default debugger." (declare (ignore v))
-        (let ((*debugger-hook* nil))
-          (invoke-debugger condition))))))
+    (cond (*emacs-connection*
+           (debug-in-emacs condition))
+          ((default-connection)
+           (with-connection ((default-connection))
+             (debug-in-emacs condition))))))
+
+(defun swank-debugger-hook (condition hook)
+  "Debugger function for binding *DEBUGGER-HOOK*."
+  (declare (ignore hook))
+  (restart-case (invoke-slime-debugger condition)
+    (default-debugger (&optional v)
+      :report "Use default debugger." (declare (ignore v))
+      (let ((*debugger-hook* nil))
+        (invoke-debugger condition)))))
 
 (defvar *global-debugger* nil
   "Non-nil means the Swank debugger hook will be installed globally.")




More information about the slime-cvs mailing list