summaryrefslogtreecommitdiff
path: root/lisp/window.el
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>2001-11-26 10:09:56 +0000
committerRichard M. Stallman <rms@gnu.org>2001-11-26 10:09:56 +0000
commitf9fa0e8aea7c36701594732269ea294fd22a6a26 (patch)
treed3781276e93c2ec78de31e8a639f8df97ac45536 /lisp/window.el
parent240cbfca032e4ecfb0b95b68424319b89215d27e (diff)
downloademacs-f9fa0e8aea7c36701594732269ea294fd22a6a26.tar.gz
(save-selected-window): No error if saved window is dead.
Diffstat (limited to 'lisp/window.el')
-rw-r--r--lisp/window.el7
1 files changed, 5 insertions, 2 deletions
diff --git a/lisp/window.el b/lisp/window.el
index 4d97117a4eb..532a1cc0009 100644
--- a/lisp/window.el
+++ b/lisp/window.el
@@ -127,11 +127,14 @@ Anything else means restrict to the selected frame."
(eq window (active-minibuffer-window)))
(defmacro save-selected-window (&rest body)
- "Execute BODY, then select the window that was selected before BODY."
+ "Execute BODY, then select the window that was selected before BODY.
+However, if that window has become dead, don't get an error,
+just refrain from switching to it."
`(let ((save-selected-window-window (selected-window)))
(unwind-protect
(progn ,@body)
- (select-window save-selected-window-window))))
+ (if (window-live-p save-selected-window-window)
+ (select-window save-selected-window-window)))))
(defun count-windows (&optional minibuf)
"Return the number of visible windows.