mirror of
https://github.com/emacs-exwm/exwm.git
synced 2024-11-30 16:07:59 +01:00
Fix for "Selecting deleted buffer" exception
This commit is contained in:
parent
3edf2e8880
commit
93d96757b6
1 changed files with 7 additions and 15 deletions
|
@ -405,21 +405,13 @@ manager is shutting down."
|
|||
(xcb:flush exwm--connection))
|
||||
(let ((kill-buffer-func
|
||||
(lambda (buffer)
|
||||
(with-current-buffer buffer
|
||||
(let ((kill-buffer-query-functions nil)
|
||||
(floating exwm--floating-frame))
|
||||
(kill-buffer)
|
||||
(when floating
|
||||
(let ((kill-buffer-query-functions nil))
|
||||
(when exwm--floating-frame
|
||||
(select-window
|
||||
(frame-selected-window exwm-workspace--current))))))))
|
||||
(if (not (active-minibuffer-window))
|
||||
;; Kill the buffer as usual.
|
||||
(funcall kill-buffer-func buffer)
|
||||
;; This can happen when this buffer was requested to be killed
|
||||
;; from the minibuffer (e.g. with `ido-kill-buffer-at-head').
|
||||
;; We have to exit the minibuffer first or there'll be a
|
||||
;; "selecting deleted buffer" error.
|
||||
(frame-selected-window exwm-workspace--current)))
|
||||
(kill-buffer buffer)))))
|
||||
(run-with-idle-timer 0 nil kill-buffer-func buffer)
|
||||
(when (active-minibuffer-window)
|
||||
(exit-minibuffer))))))
|
||||
|
||||
(defun exwm-manage--scan ()
|
||||
|
|
Loading…
Reference in a new issue