summaryrefslogtreecommitdiff
path: root/lisp/frame.el
diff options
context:
space:
mode:
authorMiles Bader <miles@gnu.org>2007-10-15 02:07:53 +0000
committerMiles Bader <miles@gnu.org>2007-10-15 02:07:53 +0000
commitb2529d56b5126319a1659dc1530d6fc102cc21d6 (patch)
treed538297f4ddc6c9200bfed9a1a67ddb479dcc7da /lisp/frame.el
parentdecb374a426c8d095d144829791305d91a26b7b7 (diff)
parent69779ec883ae09f0187aa961930e7b308a71eebb (diff)
downloademacs-b2529d56b5126319a1659dc1530d6fc102cc21d6.tar.gz
Merge from emacs--rel--22
Patches applied: * emacs--rel--22 (patch 116-121) - Update from CVS Revision: emacs@sv.gnu.org/emacs--devo--0--patch-889
Diffstat (limited to 'lisp/frame.el')
-rw-r--r--lisp/frame.el11
1 files changed, 9 insertions, 2 deletions
diff --git a/lisp/frame.el b/lisp/frame.el
index 30573db9e66..1c11829475b 100644
--- a/lisp/frame.el
+++ b/lisp/frame.el
@@ -950,8 +950,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)))))