[slime-cvs] CVS slime

CVS User trittweiler trittweiler at common-lisp.net
Tue May 12 17:26:48 UTC 2009


Update of /project/slime/cvsroot/slime
In directory cl-net:/tmp/cvs-serv19154

Modified Files:
	swank-allegro.lisp ChangeLog 
Log Message:
	* swank-allegro.lisp (find-topframe): Hide SWANK related cruft
	from showing up in backtraces in SLDB.


--- /project/slime/cvsroot/slime/swank-allegro.lisp	2009/01/10 12:25:16	1.124
+++ /project/slime/cvsroot/slime/swank-allegro.lisp	2009/05/12 17:26:48	1.125
@@ -143,10 +143,15 @@
   `(:ok ,(format nil "Set breakpoint at start of ~S" fname)))
 
 (defun find-topframe ()
-  (let ((skip-frames 3))
-    (do ((f (excl::int-newest-frame) (next-frame f))
-         (i 0 (1+ i)))
-        ((= i skip-frames) f))))
+  (let ((magic-symbol (intern (symbol-name :swank-debugger-hook)
+                              (find-package :swank)))
+        (top-frame (excl::int-newest-frame)))
+    (loop for frame = top-frame then (next-frame frame)
+          for name  = (debugger:frame-name frame)
+          for i from 0
+          when (eq name magic-symbol)
+            return (next-frame frame)
+          until (= i 10) finally (return top-frame))))
 
 (defun next-frame (frame)
   (let ((next (excl::int-next-older-frame frame)))
--- /project/slime/cvsroot/slime/ChangeLog	2009/05/12 17:24:49	1.1744
+++ /project/slime/cvsroot/slime/ChangeLog	2009/05/12 17:26:48	1.1745
@@ -1,5 +1,10 @@
 2009-05-12  Tobias C. Rittweiler  <tcr at freebits.de>
 
+	* swank-allegro.lisp (find-topframe): Hide SWANK related cruft
+	from showing up in backtraces in SLDB.
+
+2009-05-12  Tobias C. Rittweiler  <tcr at freebits.de>
+
 	* slime.el (slime-display-warning): Add `warning' as warning type.
 	(slime-show-note-counts): If compilation failed, fontify the
 	message in red to be more visibly apparant.





More information about the slime-cvs mailing list