]> git.eshelyaron.com Git - emacs.git/commitdiff
(bs-cycle-previous): Don't modify the cycle list until
authorChong Yidong <cyd@stupidchicken.com>
Tue, 5 Jun 2007 15:59:15 +0000 (15:59 +0000)
committerChong Yidong <cyd@stupidchicken.com>
Tue, 5 Jun 2007 15:59:15 +0000 (15:59 +0000)
`switch-to-buffer' has returned succesfully.
(bs-cycle-next): Ditto.  Also, don't bury the buffer when the
window is dedicated (it could iconify the frame).

lisp/bs.el

index b1fa47100f02572367d71ceb4e5c252c87a1ca9e..5951d129d9695c65d321bb7ec520f7c8d418fb22 100644 (file)
@@ -1221,10 +1221,13 @@ by buffer configuration `bs-cycle-configuration-name'."
                                        bs--cycle-list)))
             (next (car tupel))
             (cycle-list (cdr tupel)))
+       (unless (window-dedicated-p (selected-window))
+         ;; We don't want the frame iconified if the only window in the frame
+         ;; happens to be dedicated; let's get the error from switch-to-buffer
+         (bury-buffer))
+       (switch-to-buffer next)
        (setq bs--cycle-list (append (cdr cycle-list)
                                     (list (car cycle-list))))
-       (bury-buffer)
-       (switch-to-buffer next)
        (bs-message-without-log "Next buffers: %s"
                                (or (cdr bs--cycle-list)
                                    "this buffer"))))))
@@ -1251,9 +1254,9 @@ by buffer configuration `bs-cycle-configuration-name'."
                                            bs--cycle-list)))
             (prev-buffer (car tupel))
             (cycle-list (cdr tupel)))
+       (switch-to-buffer prev-buffer)
        (setq bs--cycle-list (append (last cycle-list)
                                     (reverse (cdr (reverse cycle-list)))))
-       (switch-to-buffer prev-buffer)
        (bs-message-without-log "Previous buffers: %s"
                                (or (reverse (cdr bs--cycle-list))
                                    "this buffer"))))))