[slime-cvs] CVS slime
heller
heller at common-lisp.net
Wed Sep 17 06:21:13 UTC 2008
Update of /project/slime/cvsroot/slime
In directory clnet:/tmp/cvs-serv24401
Modified Files:
ChangeLog slime.el swank.lisp
Log Message:
* slime.el (slime-test-find-top-level-restart): New function.
[def-slime-test] (interrupt-at-toplevel, interrupt-in-debugger):
Use it.
--- /project/slime/cvsroot/slime/ChangeLog 2008/09/17 06:20:05 1.1511
+++ /project/slime/cvsroot/slime/ChangeLog 2008/09/17 06:20:34 1.1512
@@ -1,8 +1,8 @@
-2008-09-16 Tobias C. Rittweiler <tcr at freebits.de>
+2008-09-17 Helmut Eller <heller at common-lisp.net>
- * slime.el (slime-end-of-list): `backward-down-list' was used
- there which is defined by paredit.el.
- Use `(down-list -1)' instead.
+ * slime.el (slime-test-find-top-level-restart): New function.
+ [def-slime-test] (interrupt-at-toplevel, interrupt-in-debugger):
+ Use it.
2008-09-16 Helmut Eller <heller at common-lisp.net>
@@ -34,6 +34,12 @@
* swank-lispworks.lisp (skip-comments): New function.
(dspec-stream-position): Use it.
+2008-09-16 Tobias C. Rittweiler <tcr at freebits.de>
+
+ * slime.el (slime-end-of-list): `backward-down-list' was used
+ there which is defined by paredit.el.
+ Use `(down-list -1)' instead.
+
2008-09-15 Helmut Eller <heller at common-lisp.net>
* swank-lispworks.lisp (describe-symbol-for-emacs): Revert last
--- /project/slime/cvsroot/slime/slime.el 2008/09/17 06:20:09 1.1019
+++ /project/slime/cvsroot/slime/slime.el 2008/09/17 06:20:39 1.1020
@@ -9405,9 +9405,17 @@
(get-buffer-window (sldb-get-default-buffer))))
5)
(with-current-buffer (sldb-get-default-buffer)
- (sldb-quit))
+ (sldb-invoke-restart (slime-test-find-top-level-restart)))
(slime-sync-to-top-level 5))
+(defun slime-test-find-top-level-restart ()
+ (let ((case-fold-search t))
+ (or (loop for i from 0 for (name str) in sldb-restarts
+ when (string-match "SLIME's top level" str) return i)
+ (loop for i from 0 for (name str) in sldb-restarts
+ when (and (string-match "abort" name) (string-match "top" str))
+ return i))))
+
(def-slime-test interrupt-in-blocking-read
()
"Let's see what happens if we interrupt a blocking read operation."
@@ -9459,7 +9467,7 @@
(lambda () (equal (sldb-level) level))
2)))
(with-current-buffer (sldb-get-default-buffer)
- (sldb-quit))
+ (sldb-invoke-restart (slime-test-find-top-level-restart)))
(slime-sync-to-top-level 1))
(def-slime-test disconnect
--- /project/slime/cvsroot/slime/swank.lisp 2008/09/15 10:41:03 1.589
+++ /project/slime/cvsroot/slime/swank.lisp 2008/09/17 06:20:39 1.590
@@ -2347,7 +2347,8 @@
(defslimefun throw-to-toplevel ()
"Invoke the ABORT-REQUEST restart abort an RPC from Emacs.
If we are not evaluating an RPC then ABORT instead."
- (let ((restart (find-restart *sldb-quit-restart*)))
+ (let ((restart (and (not (symbolp *sldb-quit-restart*))
+ (find-restart *sldb-quit-restart*))))
(cond (restart (invoke-restart restart))
(t (format nil
"Restart not found: ~a"
More information about the slime-cvs
mailing list