Subject: Re: bug#73584: 29.3; read-key

From: Eli Zaretskii <[email-masked]>
Date: Sun, 27 Oct 2024 12:30:02 +0200

> Cc: [email-masked], [email-masked], [email-masked]
> Date: Sun, 13 Oct 2024 14:41:34 +0300
> From: Eli Zaretskii <[email-masked]>
> 
> > From: Stefan Monnier <[email-masked]>
> > Cc: Stefan Kangas <[email-masked]>,  [email-masked],
> >   [email-masked]
> > Date: Thu, 03 Oct 2024 11:43:25 -0400
> > 
> > > The OP shot himself in the foot by invoking by hand a low-level
> > > function with a wrong argument.  Interactive functions and high-level
> > > APIs must check their arguments right away, but low-level functions
> > > like this one do not.
> > 
> > I think the "bug" is indeed not in the fact that we check too late for
> > a string.  I guess we could say that any code which temporarily rebinds
> > the global map should be super-extra careful never to signal an error,
> > and prevent itself from being Edebugged etc... but it would be
> > preferable for the debuggers to "handle it".
> 
> Is the patch below acceptable as the solution to this?
> 
> diff --git a/lisp/emacs-lisp/backtrace.el b/lisp/emacs-lisp/backtrace.el
> index 120972d..e353970 100644
> --- a/lisp/emacs-lisp/backtrace.el
> +++ b/lisp/emacs-lisp/backtrace.el
> @@ -202,6 +202,7 @@ backtrace-mode-map
>    "+"   #'backtrace-multi-line
>    "-"   #'backtrace-single-line
>    "."   #'backtrace-expand-ellipses
> +  "C-]"    #'abort-recursive-edit
>    "<follow-link>" 'mouse-face
>    "<mouse-2>"     #'mouse-select-window

No further comments within 2 weeks, so I've now installed this on the
master branch, and I'm therefore closing this bug.