diff options
| author | Juanma Barranquero | 2014-02-18 18:33:37 +0100 |
|---|---|---|
| committer | Juanma Barranquero | 2014-02-18 18:33:37 +0100 |
| commit | 7108e1c040a911dc30147784eb88e752e483e5c3 (patch) | |
| tree | 661eca8a9048520f98bda1a9f35901e0b7519055 | |
| parent | 5185f8ed16a8ec076b2517fb8bf50c56e12d76af (diff) | |
| download | emacs-7108e1c040a911dc30147784eb88e752e483e5c3.tar.gz 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.
| -rw-r--r-- | lisp/ChangeLog | 6 | ||||
| -rw-r--r-- | lisp/frameset.el | 6 |
2 files changed, 11 insertions, 1 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 155063592b6..e797663b70a 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,9 @@ | |||
| 1 | 2014-02-18 Juanma Barranquero <lekktu@gmail.com> | ||
| 2 | |||
| 3 | * frameset.el (frameset--restore-frame): When a frame is being reused | ||
| 4 | and its root window is not alive, delete all the frame's windows before | ||
| 5 | restoring the window state. This works around the issue in bug#16793. | ||
| 6 | |||
| 1 | 2014-02-18 Glenn Morris <rgm@gnu.org> | 7 | 2014-02-18 Glenn Morris <rgm@gnu.org> |
| 2 | 8 | ||
| 3 | * textmodes/remember.el (remember-data-directory) | 9 | * textmodes/remember.el (remember-data-directory) |
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." | |||
| 932 | (setq frame (frameset--find-frame-if nil display)))) | 932 | (setq frame (frameset--find-frame-if nil display)))) |
| 933 | ;; If found, remove from the list. | 933 | ;; If found, remove from the list. |
| 934 | (when frame | 934 | (when frame |
| 935 | (setq frameset--reuse-list (delq frame frameset--reuse-list))) | 935 | (setq frameset--reuse-list (delq frame frameset--reuse-list)) |
| 936 | ;; Workaround for feature/bug#16793 | ||
| 937 | (let ((root (frame-root-window frame))) | ||
| 938 | (unless (window-live-p root) | ||
| 939 | (delete-other-windows-internal (frame-first-window root) root)))) | ||
| 936 | frame)) | 940 | frame)) |
| 937 | 941 | ||
| 938 | (defun frameset--initial-params (parameters) | 942 | (defun frameset--initial-params (parameters) |