From 8fda90b3aa538ec96c11aeff8574cb25069407d4 Mon Sep 17 00:00:00 2001 From: Jethro Kuan Date: Thu, 6 Feb 2020 12:49:13 +0800 Subject: [PATCH] Prevent running of too many timers --- org-roam.el | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/org-roam.el b/org-roam.el index 6b656e8..db56408 100644 --- a/org-roam.el +++ b/org-roam.el @@ -233,13 +233,16 @@ Valid states are 'visible, 'exists and 'none." (defun org-roam--enable () (add-hook 'post-command-hook #'org-roam--maybe-update-buffer -100 t) - (setq org-roam-update-timer - (run-with-timer 0 (* org-roam-update-interval 60) 'org-roam--build-cache-async)) + (unless org-roam-update-timer + (setq org-roam-update-timer + (run-with-timer 0 (* org-roam-update-interval 60) 'org-roam--build-cache-async))) (org-roam--maybe-update-buffer)) (defun org-roam--disable () (remove-hook 'post-command-hook #'org-roam--maybe-update-buffer) - (cancel-timer org-roam-update-timer)) + (when org-roam-update-timer + (cancel-timer org-roam-update-timer) + (setq org-roam-update-timer nil))) (defun org-roam--setup-buffer () "Setup the `org-roam' buffer at the `org-roam-position'."