diff options
author | Juanma Barranquero <lekktu@gmail.com> | 2014-02-18 18:33:37 +0100 |
---|---|---|
committer | Juanma Barranquero <lekktu@gmail.com> | 2014-02-18 18:33:37 +0100 |
commit | 7108e1c040a911dc30147784eb88e752e483e5c3 (patch) | |
tree | 661eca8a9048520f98bda1a9f35901e0b7519055 /lisp/frameset.el | |
parent | 5185f8ed16a8ec076b2517fb8bf50c56e12d76af (diff) | |
download | emacs-7108e1c040a911dc30147784eb88e752e483e5c3.tar.gz emacs-7108e1c040a911dc30147784eb88e752e483e5c3.tar.bz2 emacs-7108e1c040a911dc30147784eb88e752e483e5c3.zip |
lisp/frameset.el: Workaround bug#16793.
lisp/frameset.el (frameset--restore-frame): When a frame is being reused
and its root window is not alive, delete all the frame's windows before
restoring the window state.
Diffstat (limited to 'lisp/frameset.el')
-rw-r--r-- | lisp/frameset.el | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lisp/frameset.el b/lisp/frameset.el index 977cc8433d4..f0b3c79f776 100644 --- a/lisp/frameset.el +++ b/lisp/frameset.el @@ -932,7 +932,11 @@ is the parameter alist of the frame being restored. Internal use only." (setq frame (frameset--find-frame-if nil display)))) ;; If found, remove from the list. (when frame - (setq frameset--reuse-list (delq frame frameset--reuse-list))) + (setq frameset--reuse-list (delq frame frameset--reuse-list)) + ;; Workaround for feature/bug#16793 + (let ((root (frame-root-window frame))) + (unless (window-live-p root) + (delete-other-windows-internal (frame-first-window root) root)))) frame)) (defun frameset--initial-params (parameters) |