From 6443eec2fff11c235886d3a11334de8144ae4a64 Mon Sep 17 00:00:00 2001 From: "Tobias C. Rittweiler" Date: Thu, 18 Sep 2008 10:08:34 +0000 Subject: [PATCH] * swank-ecl.lisp: Forgot to update ECL's backend when introducing swank-frames in commit on 2008-09-12. --- ChangeLog | 5 +++++ swank-ecl.lisp | 20 +++++++++++--------- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/ChangeLog b/ChangeLog index 52609952..a9739475 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2008-09-18 Tobias C. Rittweiler + + * swank-ecl.lisp: Forgot to update ECL's backend when introducing + swank-frames in commit on 2008-09-12. + 2008-09-18 Helmut Eller * slime.el (slime-eval-with-transcript): Accept some more arguments diff --git a/swank-ecl.lisp b/swank-ecl.lisp index 0c991fe1..a6fcfb71 100644 --- a/swank-ecl.lisp +++ b/swank-ecl.lisp @@ -272,11 +272,11 @@ (declare (type function debugger-loop-fn)) (let* ((*tpl-commands* si::tpl-commands) (*ihs-top* (ihs-top 'call-with-debugging-environment)) - (*ihs-current* *ihs-top*) - (*frs-base* (or (sch-frs-base *frs-top* *ihs-base*) (1+ (frs-top)))) - (*frs-top* (frs-top)) - (*read-suppress* nil) - (*tpl-level* (1+ *tpl-level*)) + (*ihs-current* *ihs-top*) + (*frs-base* (or (sch-frs-base *frs-top* *ihs-base*) (1+ (frs-top)))) + (*frs-top* (frs-top)) + (*read-suppress* nil) + (*tpl-level* (1+ *tpl-level*)) (*backtrace* (loop for ihs from *ihs-base* below *ihs-top* collect (list (si::ihs-fun ihs) (si::ihs-env ihs) @@ -289,7 +289,7 @@ (unless (si::fixnump name) (push name (third x))))))) (setf *backtrace* (remove-if #'is-ignorable-fun-p (nreverse *backtrace*))) - (Setf *tmp* *backtrace*) + (setf *tmp* *backtrace*) (set-break-env) (set-current-ihs) (let ((*ihs-base* *ihs-top*)) @@ -303,7 +303,8 @@ (defimplementation compute-backtrace (start end) (when (numberp end) (setf end (min end (length *backtrace*)))) - (subseq *backtrace* start end)) + (loop for f in (subseq *backtrace* start end) + collect (make-swank-frame :%frame f :restartable :unknown))) (defun frame-name (frame) (let ((x (first frame))) @@ -343,8 +344,9 @@ )))) (values functions blocks variables))) -(defimplementation print-frame (frame stream) - (format stream "~A" (first frame))) +(defimplementation print-swank-frame (swank-frame stream) + (let ((frame (swank-frame.%frame swank-frame))) + (format stream "~A" (first frame)))) (defimplementation frame-source-location-for-emacs (frame-number) (nth-value 1 (frame-function (elt *backtrace* frame-number))))