summaryrefslogtreecommitdiff
path: root/lisp/org/org-persist.el
diff options
context:
space:
mode:
authorKyle Meyer <kyle@kyleam.com>2022-12-10 16:59:46 -0500
committerKyle Meyer <kyle@kyleam.com>2022-12-10 16:59:46 -0500
commit01154166057e7cf289318a8cfa4d43716f26ca20 (patch)
tree79dcc7b1c12e53ae852ae556541931fdd1a7ae66 /lisp/org/org-persist.el
parent26a8644a58768281bae249121f4f18d7b0661c44 (diff)
downloademacs-01154166057e7cf289318a8cfa4d43716f26ca20.tar.gz
Update to Org 9.6-31-g954a95
Diffstat (limited to 'lisp/org/org-persist.el')
-rw-r--r--lisp/org/org-persist.el15
1 files changed, 11 insertions, 4 deletions
diff --git a/lisp/org/org-persist.el b/lisp/org/org-persist.el
index 108292f1e92..1a32ed01020 100644
--- a/lisp/org/org-persist.el
+++ b/lisp/org/org-persist.el
@@ -161,7 +161,7 @@
(declare-function org-at-heading-p "org" (&optional invisible-not-ok))
-(defconst org-persist--storage-version "2.5"
+(defconst org-persist--storage-version "2.7"
"Persistent storage layout version.")
(defgroup org-persist nil
@@ -856,9 +856,16 @@ When IGNORE-RETURN is non-nil, just return t on success without calling
(setq associated (org-persist--normalize-associated (get-file-buffer (plist-get associated :file)))))
(let ((collection (org-persist--get-collection container associated)))
(setf collection (plist-put collection :associated associated))
- (unless (seq-find (lambda (v)
- (run-hook-with-args-until-success 'org-persist-before-write-hook v associated))
- (plist-get collection :container))
+ (unless (or
+ ;; Prevent data leakage from encrypted files.
+ ;; We do it in somewhat paranoid manner and do not
+ ;; allow anything related to encrypted files to be
+ ;; written.
+ (and (plist-get associated :file)
+ (string-match-p epa-file-name-regexp (plist-get associated :file)))
+ (seq-find (lambda (v)
+ (run-hook-with-args-until-success 'org-persist-before-write-hook v associated))
+ (plist-get collection :container)))
(when (or (file-exists-p org-persist-directory) (org-persist--save-index))
(let ((file (org-file-name-concat org-persist-directory (plist-get collection :persist-file)))
(data (mapcar (lambda (c) (cons c (org-persist-write:generic c collection)))