Function: majutsu-ediff--cleanup-diffedit-variant-buffers
majutsu-ediff--cleanup-diffedit-variant-buffers is a natively compiled
function defined in majutsu-ediff.el.
Signature
(majutsu-ediff--cleanup-diffedit-variant-buffers LEFT-FILE RIGHT-FILE LEFT-EXISTING RIGHT-EXISTING)
Documentation
Persist and close diffedit variant buffers created for this session.
Source Code
;; Defined in /nix/store/jagqw3nms546pad0gxi5f3wsckk6pji7-emacs-packages-deps/share/emacs/site-lisp/majutsu-ediff.el
(defun majutsu-ediff--cleanup-diffedit-variant-buffers
(left-file right-file left-existing right-existing)
"Persist and close diffedit variant buffers created for this session."
(cl-labels ((force-kill (buffer)
(when (buffer-live-p buffer)
(with-current-buffer buffer
;; with-editor installs a kill guard that raises a user-error.
;; Diffedit cleanup runs after the edit session has already
;; finished, so bypass query hooks to avoid aborting quit flow.
(let ((kill-buffer-query-functions nil))
(kill-buffer buffer))))))
(let* ((left-buffer (get-file-buffer left-file))
(right-buffer (get-file-buffer right-file)))
(when (and (buffer-live-p right-buffer)
(not right-existing))
(with-current-buffer right-buffer
(when (and (buffer-file-name)
(buffer-modified-p)
(file-writable-p (buffer-file-name)))
(save-buffer)))
(force-kill right-buffer))
(when (and (buffer-live-p left-buffer)
(not left-existing))
(force-kill left-buffer)))))