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)