; Fix incompatibility in 'display-buffer-assq-regexp'
* lisp/window.el (display-buffer-assq-regexp): Make it accept a buffer's name again, as it did in Emacs 28. This makes computing the buffer's name inside the function unnecessary. (display-buffer): Always pass the buffer's name to 'display-buffer-assq-regexp'. (Bug#62417)
This commit is contained in:
parent
ba3ade58f3
commit
4ec4f614c7
1 changed files with 8 additions and 8 deletions
|
@ -7556,19 +7556,16 @@ all fail. It should never be set by programs or users. See
|
||||||
`display-buffer'.")
|
`display-buffer'.")
|
||||||
(put 'display-buffer-fallback-action 'risky-local-variable t)
|
(put 'display-buffer-fallback-action 'risky-local-variable t)
|
||||||
|
|
||||||
(defun display-buffer-assq-regexp (buffer-or-name alist action)
|
(defun display-buffer-assq-regexp (buffer-name alist action)
|
||||||
"Retrieve ALIST entry corresponding to buffer specified by BUFFER-OR-NAME.
|
"Retrieve ALIST entry corresponding to buffer whose name is BUFFER-NAME.
|
||||||
This returns the cdr of the alist entry ALIST if the entry's
|
This returns the cdr of the alist entry ALIST if the entry's
|
||||||
key (its car) and the name of the buffer designated by
|
key (its car) and the name of the buffer designated by
|
||||||
BUFFER-OR-NAME satisfy `buffer-match-p', using the key as
|
BUFFER-NAME satisfy `buffer-match-p', using the key as
|
||||||
CONDITION argument of `buffer-match-p'. ACTION should have the
|
CONDITION argument of `buffer-match-p'. ACTION should have the
|
||||||
form of the action argument passed to `display-buffer'."
|
form of the action argument passed to `display-buffer'."
|
||||||
(catch 'match
|
(catch 'match
|
||||||
(dolist (entry alist)
|
(dolist (entry alist)
|
||||||
(when (buffer-match-p (car entry) (if (stringp buffer-or-name)
|
(when (buffer-match-p (car entry) buffer-name action)
|
||||||
buffer-or-name
|
|
||||||
(buffer-name buffer-or-name))
|
|
||||||
action)
|
|
||||||
(throw 'match (cdr entry))))))
|
(throw 'match (cdr entry))))))
|
||||||
|
|
||||||
(defvar display-buffer--same-window-action
|
(defvar display-buffer--same-window-action
|
||||||
|
@ -7727,6 +7724,9 @@ specified by the ACTION argument."
|
||||||
(let ((buffer (if (bufferp buffer-or-name)
|
(let ((buffer (if (bufferp buffer-or-name)
|
||||||
buffer-or-name
|
buffer-or-name
|
||||||
(get-buffer buffer-or-name)))
|
(get-buffer buffer-or-name)))
|
||||||
|
(buf-name (if (bufferp buffer-or-name)
|
||||||
|
(buffer-name buffer-or-name)
|
||||||
|
buffer-or-name))
|
||||||
;; Make sure that when we split windows the old window keeps
|
;; Make sure that when we split windows the old window keeps
|
||||||
;; point, bug#14829.
|
;; point, bug#14829.
|
||||||
(split-window-keep-point t)
|
(split-window-keep-point t)
|
||||||
|
@ -7735,7 +7735,7 @@ specified by the ACTION argument."
|
||||||
(unless (listp action) (setq action nil))
|
(unless (listp action) (setq action nil))
|
||||||
(let* ((user-action
|
(let* ((user-action
|
||||||
(display-buffer-assq-regexp
|
(display-buffer-assq-regexp
|
||||||
buffer display-buffer-alist action))
|
buf-name display-buffer-alist action))
|
||||||
(special-action (display-buffer--special-action buffer))
|
(special-action (display-buffer--special-action buffer))
|
||||||
;; Extra actions from the arguments to this function:
|
;; Extra actions from the arguments to this function:
|
||||||
(extra-action
|
(extra-action
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue