Subject: Re: bug#13336: 24.3.50; `next-frame' should not choose a frame (e.g. *Backtrace*) that did not exist when it was invoked

From: [email-masked]
Date: Mon, 30 Jan 2017 01:33:22 -0500

retitle 13336 `other-frame' should not choose a frame (e.g. *Backtrace*) that did not exist when it was invoked
severity 13336 wishlist
quit

"Drew Adams" <[email-masked]> writes:

> Set `special-display-regexps' or other so that `*Backtrace*' gets
> displayed in its own (special-display) frame.
>  
> Evaluate the source code for `next-frame', then

I suppose you meant `other-frame' here (next-frame is a C
function) and in the title.

> M-x debug-on-entry next-frame, then C-x o.
>  
> When stepping through the debugger, the next frame should never be
> *Backtrace* (unless a *Backtrace* frame existed before invoking `next
> frame'), but it can be.  This is a bug IMO.

I again suppose you mean `other-frame' here, otherwise I would say it's
not a bug, since the the *Backtrace* frame does exist by the time
`next-frame' is called.

By the way, from your backtrace it looks like you did debug-on-entry on
`other-frame', but in that case there's no way for it to "snapshot" the
list of existing frames "before" the call, since you've stopped in the
debugger before any of its code is executed.  It's only possible to fix
the case where you stop only later on next-frame.