2000-12-04 13:00:00 ShengHuo ZHU <zsh@cs.rochester.edu>
[gnus] / lisp / gnus-win.el
index 6a9ce29..3abf46f 100644 (file)
@@ -432,6 +432,10 @@ See the Gnus manual for an explanation of the syntax used.")
          ;; put point in the assigned buffer, and do not touch the
          ;; winconf.
          (select-window all-visible)
+       
+       ;; Make sure "the other" buffer, nntp-server-buffer, is live.
+       (unless (gnus-buffer-live-p nntp-server-buffer)
+         (nnheader-init-server-buffer))
 
        ;; Either remove all windows or just remove all Gnus windows.
        (let ((frame (selected-frame)))
@@ -447,11 +451,11 @@ See the Gnus manual for an explanation of the syntax used.")
                    (gnus-delete-windows-in-gnusey-frames))
                ;; Just remove some windows.
                (gnus-remove-some-windows)
-               (switch-to-buffer nntp-server-buffer))
+               (set-buffer nntp-server-buffer))
            (select-frame frame)))
 
        (let (gnus-window-frame-focus)
-         (switch-to-buffer nntp-server-buffer)
+         (set-buffer nntp-server-buffer)
          (gnus-configure-frame split)
          (when gnus-window-frame-focus
            (select-frame (window-frame gnus-window-frame-focus))))))))
@@ -536,7 +540,7 @@ should have point."
                  lowest-buf buf))))
       (when lowest-buf
        (pop-to-buffer lowest-buf)
-       (switch-to-buffer nntp-server-buffer))
+       (set-buffer nntp-server-buffer))
       (mapcar (lambda (b) (delete-windows-on b t)) bufs))))
 
 (provide 'gnus-win)