lisp/org-persist.el: Ignore lock files when writing cache

* lisp/org-persist.el (org-persist--write-elisp-file): Ignore locks.

Reported-by: Greg Minshall <minshall@umich.edu>
Link: https://orgmode.org/list/574109.1715751441@archlinux
This commit is contained in:
Ihor Radchenko 2024-05-17 14:28:48 +03:00
parent 64bb80b982
commit dc485a6590
No known key found for this signature in database
GPG Key ID: 6470762A7DA11D8B
1 changed files with 11 additions and 6 deletions

View File

@ -476,12 +476,17 @@ FORMAT and ARGS are passed to `message'."
(start-time (float-time)))
(unless (file-exists-p (file-name-directory file))
(make-directory (file-name-directory file) t))
(with-temp-file file
(insert ";; -*- mode: lisp-data; -*-\n")
(if pp
(let ((pp-use-max-width nil)) ; Emacs bug#58687
(pp data (current-buffer)))
(prin1 data (current-buffer))))
;; Force writing even when the file happens to be opened by
;; another Emacs process.
(cl-letf (((symbol-function #'ask-user-about-lock)
;; FIXME: Emacs 27 does not yet have `always'.
(lambda (&rest _) t)))
(with-temp-file file
(insert ";; -*- mode: lisp-data; -*-\n")
(if pp
(let ((pp-use-max-width nil)) ; Emacs bug#58687
(pp data (current-buffer)))
(prin1 data (current-buffer)))))
(org-persist--display-time
(- (float-time) start-time)
"Writing to %S" file)))