[slime-cvs] CVS slime
jsnellman
jsnellman at common-lisp.net
Tue Sep 19 11:56:38 UTC 2006
Update of /project/slime/cvsroot/slime
In directory clnet:/tmp/cvs-serv11713
Modified Files:
ChangeLog swank-sbcl.lisp
Log Message:
fix stepper on threaded SBCL
--- /project/slime/cvsroot/slime/ChangeLog 2006/09/18 21:56:13 1.947
+++ /project/slime/cvsroot/slime/ChangeLog 2006/09/19 11:56:38 1.948
@@ -1,3 +1,10 @@
+2006-09-19 Juho Snellman <jsnell at iki.fi>
+
+ * swank-backend.lisp (call-with-debugger-hook): make the stepper
+ also work with a threaded SBCL, by binding a handler for
+ sb-ext:stepper-condition instead of relying on the one that SBCL
+ establishes on the toplevel
+
2006-09-19 Juho Snellman <jsnell at iki.fi>
Extend the stepper protocol to work nicely with the SBCL stepper.
--- /project/slime/cvsroot/slime/swank-sbcl.lisp 2006/09/18 21:56:13 1.162
+++ /project/slime/cvsroot/slime/swank-sbcl.lisp 2006/09/19 11:56:38 1.163
@@ -137,7 +137,7 @@
(return (sb-bsd-sockets:socket-accept socket))
(sb-bsd-sockets:interrupted-error ()))))
-(defimplementation call-without-interrupts (fn)
+(defimplementation call-without-interrupts (fn)
(declare (type function fn))
(sb-sys:without-interrupts (funcall fn)))
@@ -634,7 +634,10 @@
(when (typep condition 'sb-ext:step-form-condition)
(let ((sb-debug:*stack-top-hint* (sb-di::find-stepped-frame)))
(sb-impl::invoke-debugger condition))))))
- (funcall fun)))
+ (handler-bind ((sb-ext:step-condition
+ (lambda (condition)
+ (funcall sb-ext:*stepper-hook* condition))))
+ (funcall fun))))
(defun nth-frame (index)
(do ((frame *sldb-stack-top* (sb-di:frame-down frame))
More information about the slime-cvs
mailing list