diff --git a/lisp/ChangeLog b/lisp/ChangeLog index c250b2ddef4..feab754d2a2 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2009-11-01 Andreas Schwab + + * view.el (view-mode-exit): If OLD-BUF is dead bury the buffer + instead of deleting the window or frame. + 2009-10-31 Chong Yidong * textmodes/sgml-mode.el (sgml-mode-facemenu-add-face-function): diff --git a/lisp/view.el b/lisp/view.el index 5ec94411ad1..238c9c1bbbe 100644 --- a/lisp/view.el +++ b/lisp/view.el @@ -660,11 +660,13 @@ OLD-WINDOW." (old-buf-info (cdr (cdr (car alist))))) (if all-win (select-window window)) (cond - ((and (consp old-buf-info) ; Case 3. - (buffer-live-p (car old-buf-info))) - (set-window-buffer window (car old-buf-info)) ; old-buf - (set-window-start window (car (cdr old-buf-info))) - (set-window-point window (car (cdr (cdr old-buf-info))))) + ((consp old-buf-info) ; Case 3. + (if (buffer-live-p (car old-buf-info)) + (progn + (set-window-buffer window (car old-buf-info)) ; old-buf + (set-window-start window (car (cdr old-buf-info))) + (set-window-point window (car (cdr (cdr old-buf-info))))) + (bury-buffer))) ((eq old-buf-info 'quit-window) (quit-window)) ; Case 4. (old-buf-info ; Case 2 or 5.