[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: 23.0.50; catching C-x 3 in yes-or-no-p
From: |
Richard Stallman |
Subject: |
Re: 23.0.50; catching C-x 3 in yes-or-no-p |
Date: |
Mon, 21 Jan 2008 15:30:23 -0500 |
and eval this function in the *scratch* buffer
(defun protected-yes-or-no-p ()
(condition-case err
(yes-or-no-p "Prompt ")
(error
(lwarn 'got-error :warning "%s" err))))
and call it. When the prompt is visible type
C-x 3
I think I figured out what happened.
I suspect that you called it with M-:, right?
That binds debug-on-error to t.
yes-or-no-p starts a recursive editing loop, and when there are no
handlers _inside_ the recursive editing loop and debug-on-error is t,
errors invoke the debugger. So this error invokes the debugger.
I think that qualifies as a bug. Perhaps the right fix is that
recursive editin levels should bind debug-on-error to nil.
Does anyone see a problem in that fix?