From b9d0d06ca5181806bc710f80ed10487dd066fc9c Mon Sep 17 00:00:00 2001 From: Ihor Radchenko Date: Wed, 20 Oct 2021 14:17:44 +0800 Subject: [PATCH] org-persist.el: Do not use hook depth unnecessarily * lisp/org-persist.el: Do not use hook depth to define the order of `org-persist-gc' and `org-persist-write-all'. Rely on default behaviour of `add-hook' instead. (org-persist-register): Use default hook depth. --- lisp/org-persist.el | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lisp/org-persist.el b/lisp/org-persist.el index 93fbb8d85..c3fd1c21b 100644 --- a/lisp/org-persist.el +++ b/lisp/org-persist.el @@ -123,7 +123,7 @@ dependency means that data shared between variables will be preserved (cons var (plist-get inherited-index :variable))))))) (org-persist--get-index var buffer) (when buffer - (add-hook 'kill-buffer-hook #'org-persist-write-all-buffer 1000 'local))) + (add-hook 'kill-buffer-hook #'org-persist-write-all-buffer 'local))) (defun org-persist-unregister (var &optional buffer) "Unregister VAR in BUFFER to be persistent. @@ -285,8 +285,10 @@ When BUFFER is `all', unregister VAR in all buffers." (if (not (file-writable-p dir)) (message "Missing write access rights to org-persist-directory: %S" org-persist-directory) - (add-hook 'kill-emacs-hook #'org-persist-gc) - (add-hook 'kill-emacs-hook #'org-persist-write-all 100))) + (add-hook 'kill-emacs-hook #'org-persist-write-all) + ;; `org-persist-gc' should run before `org-persist-write-all'. So we are adding the + ;; hook after `org-persist-write-all'. + (add-hook 'kill-emacs-hook #'org-persist-gc))) (add-hook 'after-init-hook #'org-persist-read-all)