emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/subr.el


From: Richard M . Stallman
Subject: [Emacs-diffs] Changes to emacs/lisp/subr.el
Date: Sat, 29 May 2004 11:26:40 -0400

Index: emacs/lisp/subr.el
diff -c emacs/lisp/subr.el:1.393 emacs/lisp/subr.el:1.394
*** emacs/lisp/subr.el:1.393    Fri May 28 22:33:35 2004
--- emacs/lisp/subr.el  Sat May 29 15:23:42 2004
***************
*** 1796,1805 ****
  This does not alter the buffer list ordering.
  See also `with-temp-buffer'."
    (declare (indent 1) (debug t))
!   `(let ((save-selected-window-window (selected-window)))
       (unwind-protect
         (progn (select-window ,window 'norecord)
                ,@body)
         (if (window-live-p save-selected-window-window)
           (select-window save-selected-window-window 'norecord)))))
  
--- 1796,1816 ----
  This does not alter the buffer list ordering.
  See also `with-temp-buffer'."
    (declare (indent 1) (debug t))
!   ;; Most of this code is a copy of save-selected-window.
!   `(let ((save-selected-window-window (selected-window))
!        ;; It is necessary to save all of these, because calling
!        ;; select-window changes frame-selected-window for whatever
!        ;; frame that window is in.
!        (save-selected-window-alist
!         (mapcar (lambda (frame) (list frame (frame-selected-window frame)))
!                 (frame-list))))
       (unwind-protect
         (progn (select-window ,window 'norecord)
                ,@body)
+        (dolist (elt save-selected-window-alist)
+        (and (frame-live-p (car elt))
+             (window-live-p (cadr elt))
+             (set-frame-selected-window (car elt) (cadr elt))))
         (if (window-live-p save-selected-window-window)
           (select-window save-selected-window-window 'norecord)))))
  




reply via email to

[Prev in Thread] Current Thread [Next in Thread]