summaryrefslogtreecommitdiff
path: root/lisp/frame.el
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2009-06-04 14:46:23 +0000
committerStefan Monnier <monnier@iro.umontreal.ca>2009-06-04 14:46:23 +0000
commit5e5ae184f41162f3bc8fa5eb05833aaa54bd7ad7 (patch)
treec9bb5a9e0baf5bc85c8548740359b0d4f50ed4f4 /lisp/frame.el
parent8682defdaad3a4f0ef56e1187bab35ef4dfc5c24 (diff)
downloademacs-5e5ae184f41162f3bc8fa5eb05833aaa54bd7ad7.tar.gz
(delete-other-frames): Only delete frames on the
same terminal (bug#3442).
Diffstat (limited to 'lisp/frame.el')
-rw-r--r--lisp/frame.el4
1 files changed, 4 insertions, 0 deletions
diff --git a/lisp/frame.el b/lisp/frame.el
index d39eb80d3dd..549fb8933d5 100644
--- a/lisp/frame.el
+++ b/lisp/frame.el
@@ -1485,6 +1485,10 @@ left untouched. FRAME nil or omitted means use the selected frame."
(setq frame (selected-frame)))
(let* ((mini-frame (window-frame (minibuffer-window frame)))
(frames (delq mini-frame (delq frame (frame-list)))))
+ ;; Only consider frames on the same terminal.
+ (dolist (frame (prog1 frames (setq frames nil)))
+ (if (eq (frame-terminal) (frame-terminal frame))
+ (push frame frames)))
;; Delete mon-minibuffer-only frames first, because `delete-frame'
;; signals an error when trying to delete a mini-frame that's
;; still in use by another frame.