summaryrefslogtreecommitdiff
path: root/lisp/window.el
diff options
context:
space:
mode:
authorJuri Linkov <juri@linkov.net>2021-04-28 23:25:08 +0300
committerJuri Linkov <juri@linkov.net>2021-04-28 23:25:08 +0300
commit0e8c8628854d786e2f99dd2ac35ace88a5ee7924 (patch)
tree2c22d20b8c27dfc49a68c6e7893a32465b764487 /lisp/window.el
parentf32ff8102076fabe513b3135de0adb0ff58cb815 (diff)
downloademacs-0e8c8628854d786e2f99dd2ac35ace88a5ee7924.tar.gz
emacs-0e8c8628854d786e2f99dd2ac35ace88a5ee7924.tar.bz2
emacs-0e8c8628854d786e2f99dd2ac35ace88a5ee7924.zip
* lisp/window.el (window--state-put-2): Set next/prev-buffers even to nil.
When next-buffers or prev-buffers are nil, still use set-window-next-buffers or set-window-prev-buffers to set next/prev-buffers to nil. (Bug#46904)
Diffstat (limited to 'lisp/window.el')
-rw-r--r--lisp/window.el44
1 files changed, 21 insertions, 23 deletions
diff --git a/lisp/window.el b/lisp/window.el
index 036eb271ee8..cf5752113d5 100644
--- a/lisp/window.el
+++ b/lisp/window.el
@@ -6133,29 +6133,27 @@ value can be also stored on disk and read back in a new session."
;; Select window if it's the selected one.
(when (cdr (assq 'selected state))
(select-window window))
- (when next-buffers
- (set-window-next-buffers
- window
- (delq nil (mapcar (lambda (buffer)
- (setq buffer (get-buffer buffer))
- (when (buffer-live-p buffer) buffer))
- next-buffers))))
- (when prev-buffers
- (set-window-prev-buffers
- window
- (delq nil (mapcar (lambda (entry)
- (let ((buffer (get-buffer (nth 0 entry)))
- (m1 (nth 1 entry))
- (m2 (nth 2 entry)))
- (when (buffer-live-p buffer)
- (list buffer
- (if (markerp m1) m1
- (set-marker (make-marker) m1
- buffer))
- (if (markerp m2) m2
- (set-marker (make-marker) m2
- buffer))))))
- prev-buffers)))))
+ (set-window-next-buffers
+ window
+ (delq nil (mapcar (lambda (buffer)
+ (setq buffer (get-buffer buffer))
+ (when (buffer-live-p buffer) buffer))
+ next-buffers)))
+ (set-window-prev-buffers
+ window
+ (delq nil (mapcar (lambda (entry)
+ (let ((buffer (get-buffer (nth 0 entry)))
+ (m1 (nth 1 entry))
+ (m2 (nth 2 entry)))
+ (when (buffer-live-p buffer)
+ (list buffer
+ (if (markerp m1) m1
+ (set-marker (make-marker) m1
+ buffer))
+ (if (markerp m2) m2
+ (set-marker (make-marker) m2
+ buffer))))))
+ prev-buffers))))
;; We don't want to raise an error in case the buffer does
;; not exist anymore, so we switch to a previous one and
;; save the window with the intention of deleting it later