[slime-cvs] CVS slime
    CVS User tnorderhaug 
    tnorderhaug at common-lisp.net
       
    Wed Jan 20 18:10:40 UTC 2010
    
    
  
Update of /project/slime/cvsroot/slime
In directory cl-net:/tmp/cvs-serv9556
Modified Files:
	swank.lisp 
Log Message:
Refactoring to eliminate use of swank-protocol-error.backtrace.
--- /project/slime/cvsroot/slime/swank.lisp	2010/01/19 21:14:23	1.685
+++ /project/slime/cvsroot/slime/swank.lisp	2010/01/20 18:10:40	1.686
@@ -330,18 +330,21 @@
 to T unless you want to debug swank internals.")
 
 (defmacro with-swank-protocol-error-handler ((connection) &body body)
-  (let ((var (gensym)))
-  `(let ((,var ,connection))
+  (let ((var (gensym))
+        (backtrace (gensym)))
+  `(let ((,var ,connection)
+         (,backtrace))
      (handler-case 
          (handler-bind ((swank-protocol-error 
                          (lambda (condition)
+                           (setf ,backtrace (safe-backtrace))
                            (when *debug-on-swank-protocol-error*
                              (invoke-default-debugger condition)))))
            (progn , at body))
        (swank-protocol-error (condition)
          (close-connection ,var
                            (swank-protocol-error.condition condition)
-                           (swank-protocol-error.backtrace condition)))))))
+                           ,backtrace))))))
 
 (defmacro with-panic-handler ((connection) &body body)
   (let ((var (gensym)))
    
    
More information about the slime-cvs
mailing list