Latest 21.2. Please fix. Looks like a Ben bug.
xemacs -vanilla -q
C-x C-f RET ~/.emacs RET
Modify buffer.
Use the Revert Buffer menu entry in the File menu.
A dialog box appears with the entries "%_Yes" "%_No" "%_Cancel".
No matter which is selected, I get "please answer the dialog box".
Worse, the error won't go away. It still thinks there's a dialog box
to answer.
Even worse, this behavior is non-quittable. C-g has no effect (here
there is a difference - Solaris (with motif dialogs) is non-quittable,
while on Linux with Athena dialogs, at least C-g gives me back a
working XEmacs. Coredumping this xemacs via SIGQUIT gives:
next-command-event(#<empty-event>)
byte-code("..." [next-command-event event misc-user-event-p event-object yes throw ynp-done t no nil abort menu-no-selection-hook signal quit button-release-event-p beep message "please answer the dialog box"] 3)
# (catch ynp-done ...)
# bind (echo-keystrokes event prompt)
yes-or-no-p-dialog-box("Revert buffer from file /usr/local/x/build/mos+/src/.emacs? ")
# bind (prompt)
yes-or-no-p("Revert buffer from file /usr/local/x/build/mos+/src/.emacs? ")
# bind (file-name auto-save-p opoint preserve-modes noconfirm ignore-auto)
#<compiled-function (&optional ignore-auto noconfirm preserve-modes) "...(261)" [revert-buffer-function ignore-auto noconfirm opoint recent-auto-save-p buffer-auto-save-file-name file-readable-p y-or-n-p "Buffer has been auto-saved recently. Revert from auto-save file? " auto-save-p buffer-file-name file-name error "Buffer does not seem to be associated with any file" buffer-modified-p nil found revert-without-query rx --dolist-temp--89016 string-match t yes-or-no-p format "Revert buffer from file %s? " run-hooks before-revert-hook verify-visited-file-modtime buffer-backed-up buffer-undo-list default-value after-revert-hook local-variable-p local-hook local-hook-p global-hook buffer-read-only revert-buffer-insert-file-contents-function file-exists-p "File %s no longer exists!" unlock-buffer insert-file-contents after-find-file preserve-modes set-default revert-buffer-internal-hook make-local-variable kill-local-variable] 7 876055 (list (not current-prefix-arg))>(t)
call-interactively(revert-buffer)
funcall(call-interactively revert-buffer)
# bind (widget-callback-current-channel)
(let ((widget-callback-current-channel #<x-frame "emacs" 0x2623>)) (funcall (quote call-interactively) (quote revert-buffer)))
)
eval((let ((widget-callback-current-channel #<x-frame "emacs" 0x2623>)) (funcall (quote call-interactively) (quote revert-buffer))))
# (condition-case ... . error)
# (catch top-level ...)