mirror of
https://github.com/doomemacs/doomemacs
synced 2025-08-01 12:17:25 -05:00
fix: recursive redisplay error from doom-switch-frame-hook
If a function on doom-switch-frame-hook triggered a redisplay, it could
cause infinite recursion.
Amend: 653b465c74
This commit is contained in:
@ -132,7 +132,8 @@ the frame through some other means.")
|
|||||||
doom-switch-frame-hook-debounce-delay))
|
doom-switch-frame-hook-debounce-delay))
|
||||||
(with-selected-frame fr
|
(with-selected-frame fr
|
||||||
(unwind-protect
|
(unwind-protect
|
||||||
(run-hooks 'doom-switch-frame-hook)
|
(let ((inhibit-redisplay t))
|
||||||
|
(run-hooks 'doom-switch-frame-hook))
|
||||||
(set-frame-parameter fr '+last-focus (current-time)))))))))))
|
(set-frame-parameter fr '+last-focus (current-time)))))))))))
|
||||||
|
|
||||||
(let (last-focus-state)
|
(let (last-focus-state)
|
||||||
|
@ -123,10 +123,9 @@ Respects `diff-hl-disable-on-remote'."
|
|||||||
(add-hook! '(doom-escape-hook doom-switch-window-hook doom-switch-frame-hook) :append
|
(add-hook! '(doom-escape-hook doom-switch-window-hook doom-switch-frame-hook) :append
|
||||||
(defun +vc-gutter-update-h (&rest _)
|
(defun +vc-gutter-update-h (&rest _)
|
||||||
"Return nil to prevent shadowing other `doom-escape-hook' hooks."
|
"Return nil to prevent shadowing other `doom-escape-hook' hooks."
|
||||||
(ignore (or inhibit-redisplay
|
(ignore (and (or (bound-and-true-p diff-hl-mode)
|
||||||
(and (or (bound-and-true-p diff-hl-mode)
|
(bound-and-true-p diff-hl-dir-mode))
|
||||||
(bound-and-true-p diff-hl-dir-mode))
|
(diff-hl-update-once)))))
|
||||||
(diff-hl-update-once))))))
|
|
||||||
;; UX: Update diff-hl when magit alters git state.
|
;; UX: Update diff-hl when magit alters git state.
|
||||||
(when (modulep! :tools magit)
|
(when (modulep! :tools magit)
|
||||||
(add-hook 'magit-post-refresh-hook #'diff-hl-magit-post-refresh))
|
(add-hook 'magit-post-refresh-hook #'diff-hl-magit-post-refresh))
|
||||||
|
Reference in New Issue
Block a user