From: Martin Rudalics Date: Wed, 3 Oct 2012 08:50:49 +0000 (+0200) Subject: Have kill-this-buffer don't do anything when frame is not alive or visible (Bug#8184). X-Git-Tag: emacs-24.2.90~241^2~29 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=96ef9ccd1b0a28c774ad5b9ffbfb811de540eb30;p=emacs.git Have kill-this-buffer don't do anything when frame is not alive or visible (Bug#8184). * menu-bar.el (kill-this-buffer): Don't do anything when `menu-frame' is not alive or visible (Bug#8184). --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 34afcee4b1c..1b115e5c5d5 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,8 @@ 2012-10-03 Martin Rudalics + * menu-bar.el (kill-this-buffer): Don't do anything when + `menu-frame' is not alive or visible (Bug#8184). + * emacs-lisp/debug.el (debug): When quitting the debugger window restore current buffer (Bug#12502). diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el index 010b4edfb05..88e59eff86b 100644 --- a/lisp/menu-bar.el +++ b/lisp/menu-bar.el @@ -1812,9 +1812,14 @@ for the definition of the menu frame." When called in the minibuffer, get out of the minibuffer using `abort-recursive-edit'." (interactive) - (if (menu-bar-non-minibuffer-window-p) - (kill-buffer (current-buffer)) - (abort-recursive-edit))) + (cond + ;; Don't do anything when `menu-frame' is not alive or visible + ;; (Bug#8184). + ((not (menu-bar-menu-frame-live-and-visible-p))) + ((menu-bar-non-minibuffer-window-p) + (kill-buffer (current-buffer))) + (t + (abort-recursive-edit)))) (defun kill-this-buffer-enabled-p () "Return non-nil if the `kill-this-buffer' menu item should be enabled."