diff options
author | Martin Rudalics <rudalics@gmx.at> | 2007-10-12 08:49:20 +0000 |
---|---|---|
committer | Martin Rudalics <rudalics@gmx.at> | 2007-10-12 08:49:20 +0000 |
commit | 40aa4c27cb7cac7ef2ff7a88c504cc2ae42da194 (patch) | |
tree | 5eab8ea94a26997b3c468719af4a9516683b7488 /lisp/frame.el | |
parent | 5839d7e85ca7596071d459595f194f45027535df (diff) | |
download | emacs-40aa4c27cb7cac7ef2ff7a88c504cc2ae42da194.tar.gz |
(set-frame-configuration): Assign name parameter only
if it has been set explicitly before.
Diffstat (limited to 'lisp/frame.el')
-rw-r--r-- | lisp/frame.el | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/lisp/frame.el b/lisp/frame.el index a169a8ec03c..cbdfa45d4f7 100644 --- a/lisp/frame.el +++ b/lisp/frame.el @@ -807,8 +807,15 @@ is given and non-nil, the unwanted frames are iconified instead." ;; Since we can't set a frame's minibuffer status, ;; we might as well omit the parameter altogether. (let* ((parms (nth 1 parameters)) - (mini (assq 'minibuffer parms))) - (if mini (setq parms (delq mini parms))) + (mini (assq 'minibuffer parms)) + (name (assq 'name parms)) + (explicit-name (cdr (assq 'explicit-name parms)))) + (when mini (setq parms (delq mini parms))) + ;; Leave name in iff it was set explicitly. + ;; This should fix the behavior reported in + ;; http://lists.gnu.org/archive/html/emacs-devel/2007-08/msg01632.html + (when (and name (not explicit-name)) + (setq parms (delq name parms))) parms)) (set-window-configuration (nth 2 parameters))) (setq frames-to-delete (cons frame frames-to-delete)))))) |