From: Zach Shaftel Date: Wed, 15 Jul 2020 16:20:20 +0000 (-0400) Subject: Only print offset for byte-code functions X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=refs%2Fheads%2Ffeature%2Fsoc-bytecode-in-traceback;p=emacs.git Only print offset for byte-code functions * lisp/emacs-lisp/backtrace.el (backtrace--print-flags): Check if the function is compiled and only print the offset in that case. --- diff --git a/lisp/emacs-lisp/backtrace.el b/lisp/emacs-lisp/backtrace.el index c3f2ff0cfec..f67e1dd72ac 100644 --- a/lisp/emacs-lisp/backtrace.el +++ b/lisp/emacs-lisp/backtrace.el @@ -749,11 +749,13 @@ property for use by navigation." (source (plist-get (backtrace-frame-flags frame) :source-available)) (offset (plist-get (backtrace-frame-flags frame) :bytecode-offset)) ;; right justify and pad the offset (or the empty string) - (offset-format (format "%%%ds " (- backtrace--flags-width 3)))) + (offset-format (format "%%%ds " (- backtrace--flags-width 3))) + (fun (ignore-errors (indirect-function (backtrace-frame-fun frame))))) (when (plist-get view :show-flags) (insert (if source ">" " ")) (insert (if flag "*" " ")) - (insert (format offset-format (or offset "")))) + (insert (format offset-format + (or (and (byte-code-function-p fun) offset) "")))) (put-text-property beg (point) 'backtrace-section 'func))) (defun backtrace--print-func-and-args (frame _view)