[slime-cvs] CVS slime

CVS User sboukarev sboukarev at common-lisp.net
Mon Nov 12 17:27:37 UTC 2012


Update of /project/slime/cvsroot/slime
In directory tiger.common-lisp.net:/tmp/cvs-serv10798

Modified Files:
	ChangeLog swank.lisp 
Log Message:
* swank.lisp (with-panic-handler): Abort the condition after
closing the connection, otherwise it ends up in the slime debugger
causing nested errors.


--- /project/slime/cvsroot/slime/ChangeLog	2012/11/11 20:00:33	1.2367
+++ /project/slime/cvsroot/slime/ChangeLog	2012/11/12 17:27:36	1.2368
@@ -1,3 +1,9 @@
+2012-11-12  Stas Boukarev  <stassats at gmail.com>
+
+	* swank.lisp (with-panic-handler): Abort the condition after
+	closing the connection, otherwise it ends up in the slime debugger
+	causing nested errors.
+
 2012-11-11  Stas Boukarev  <stassats at gmail.com>
 
 	* swank.lisp (interrupt-worker-thread): Solve *send-counter*
--- /project/slime/cvsroot/slime/swank.lisp	2012/11/11 20:00:33	1.796
+++ /project/slime/cvsroot/slime/swank.lisp	2012/11/12 17:27:36	1.797
@@ -317,11 +317,12 @@
 (defmacro with-panic-handler ((connection) &body body)
   "Close the connection on unhandled `serious-condition's."
   (let ((conn (gensym)))
-  `(let ((,conn ,connection))
-     (handler-bind ((serious-condition
-                     (lambda (condition)
-                       (close-connection ,conn condition (safe-backtrace)))))
-       . ,body))))
+    `(let ((,conn ,connection))
+       (handler-bind ((serious-condition
+                        (lambda (condition)
+                          (close-connection ,conn condition (safe-backtrace))
+                          (abort condition))))
+         . ,body))))
 
 (add-hook *new-connection-hook* 'notify-backend-of-connection)
 (defun notify-backend-of-connection (connection)





More information about the slime-cvs mailing list