From 96ef9ccd1b0a28c774ad5b9ffbfb811de540eb30 Mon Sep 17 00:00:00 2001 From: Martin Rudalics Date: Wed, 3 Oct 2012 10:50:49 +0200 Subject: [PATCH] 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). --- lisp/ChangeLog | 3 +++ lisp/menu-bar.el | 11 ++++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) 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." -- 2.11.4.GIT