1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-23 18:47:57 +00:00

* src/eval.c (get_backtrace): Don't skip the top frame

`profiler.el` was reporting incomplete backtraces.
I had a suspicion there was something off, but it became obvious
when I saw that `set-buffer-multibyte` did not appear in the
`profiler-report` output when opening a large compressed tarball,
even though I knew it to be a large contributor (which `elp-results`
confirmed).

I have no idea why this `backtrace_next` was there, sadly, but now
`profiler-report` gives me results that make a lot more sense.
This commit is contained in:
Stefan Monnier 2023-07-22 17:20:51 -04:00
parent 5d2d28458d
commit f37c65b402

View File

@ -4203,7 +4203,7 @@ mark_specpdl (union specbinding *first, union specbinding *ptr)
void void
get_backtrace (Lisp_Object array) get_backtrace (Lisp_Object array)
{ {
union specbinding *pdl = backtrace_next (backtrace_top ()); union specbinding *pdl = backtrace_top ();
ptrdiff_t i = 0, asize = ASIZE (array); ptrdiff_t i = 0, asize = ASIZE (array);
/* Copy the backtrace contents into working memory. */ /* Copy the backtrace contents into working memory. */