[slime-cvs] CVS update: slime/swank-allegro.lisp
Helmut Eller
heller at common-lisp.net
Mon Jun 28 16:03:52 UTC 2004
Update of /project/slime/cvsroot/slime
In directory common-lisp.net:/tmp/cvs-serv14784
Modified Files:
swank-allegro.lisp
Log Message:
(nth-frame): Skip frames where frame-visible-p is false.
Date: Mon Jun 28 09:03:52 2004
Author: heller
Index: slime/swank-allegro.lisp
diff -u slime/swank-allegro.lisp:1.41 slime/swank-allegro.lisp:1.42
--- slime/swank-allegro.lisp:1.41 Mon Jun 28 05:42:50 2004
+++ slime/swank-allegro.lisp Mon Jun 28 09:03:52 2004
@@ -125,17 +125,23 @@
(excl::*break-hook* nil))
(funcall debugger-loop-fn)))
+(defun next-frame (frame)
+ (let ((next (excl::int-next-older-frame frame)))
+ (cond ((not next) nil)
+ ((debugger:frame-visible-p next) next)
+ (t (next-frame next)))))
+
(defun nth-frame (index)
- (do ((frame *sldb-topframe* (excl::int-next-older-frame frame))
+ (do ((frame *sldb-topframe* (next-frame frame))
(i index (1- i)))
((zerop i) frame)))
(defimplementation compute-backtrace (start end)
(let ((end (or end most-positive-fixnum)))
- (loop for f = (nth-frame start) then (excl::int-next-older-frame f)
+ (loop for f = (nth-frame start) then (next-frame f)
for i from start below end
while f
- when (debugger:frame-visible-p f) collect f)))
+ collect f)))
(defimplementation print-frame (frame stream)
(debugger:output-frame stream frame :moderate))
More information about the slime-cvs
mailing list