summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lisp/ChangeLog5
-rw-r--r--lisp/window.el12
2 files changed, 12 insertions, 5 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index d053f74905b..7a1533a4009 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
+2012-06-09 Martin Rudalics <rudalics@gmx.at>
+
+ * window.el (special-display-popup-frame): Don't use
+ window--display-buffer (Bug#11651).
+
2012-06-09 Eli Zaretskii <eliz@gnu.org>
* makefile.w32-in (BIG_STACK_DEPTH): Enlarge to 2200. (Bug#11649)
diff --git a/lisp/window.el b/lisp/window.el
index 2dcc296ace1..d9dd7b63e27 100644
--- a/lisp/window.el
+++ b/lisp/window.el
@@ -4263,11 +4263,13 @@ and (cdr ARGS) as second."
special-display-buffer-names special-display-regexps)
(display-buffer buffer)))
;; If no window yet, make one in a new frame.
- (let ((frame
- (with-current-buffer buffer
- (make-frame (append args special-display-frame-alist)))))
- (window--display-buffer
- buffer (frame-selected-window frame) 'frame t))))))
+ (let* ((frame
+ (with-current-buffer buffer
+ (make-frame (append args special-display-frame-alist))))
+ (window (frame-selected-window frame)))
+ (display-buffer-record-window 'frame window buffer)
+ (set-window-dedicated-p window t)
+ window)))))
(defcustom special-display-function 'special-display-popup-frame
"Function to call for displaying special buffers.