* lisp/files.el (trusted-content-p): Make `:all` work in non-file buffers
This commit is contained in:
parent
4b685bc4fc
commit
b9dc337ea7
lisp
|
@ -742,26 +742,28 @@ See also `trusted-content'."
|
|||
;; to try and avoid marking as trusted a file that's merely accessed
|
||||
;; via a symlink that happens to be inside a trusted dir.
|
||||
(and (not untrusted-content)
|
||||
buffer-file-truename
|
||||
(with-demoted-errors "trusted-content-p: %S"
|
||||
(let ((exists (file-exists-p buffer-file-truename)))
|
||||
(or
|
||||
(eq trusted-content :all)
|
||||
;; We can't avoid trusting the user's init file.
|
||||
(if (and exists user-init-file)
|
||||
(file-equal-p buffer-file-truename user-init-file)
|
||||
(equal buffer-file-truename user-init-file))
|
||||
(let ((file (abbreviate-file-name buffer-file-truename))
|
||||
(trusted nil))
|
||||
(dolist (tf trusted-content)
|
||||
(when (or (if exists (file-equal-p tf file) (equal tf file))
|
||||
;; We don't use `file-in-directory-p' here, because
|
||||
;; we want to err on the conservative side: "guilty
|
||||
;; until proven innocent".
|
||||
(and (string-suffix-p "/" tf)
|
||||
(string-prefix-p tf file)))
|
||||
(setq trusted t)))
|
||||
trusted))))))
|
||||
(or
|
||||
(eq trusted-content :all)
|
||||
(and
|
||||
buffer-file-truename
|
||||
(with-demoted-errors "trusted-content-p: %S"
|
||||
(let ((exists (file-exists-p buffer-file-truename)))
|
||||
(or
|
||||
;; We can't avoid trusting the user's init file.
|
||||
(if (and exists user-init-file)
|
||||
(file-equal-p buffer-file-truename user-init-file)
|
||||
(equal buffer-file-truename user-init-file))
|
||||
(let ((file (abbreviate-file-name buffer-file-truename))
|
||||
(trusted nil))
|
||||
(dolist (tf trusted-content)
|
||||
(when (or (if exists (file-equal-p tf file) (equal tf file))
|
||||
;; We don't use `file-in-directory-p' here, because
|
||||
;; we want to err on the conservative side: "guilty
|
||||
;; until proven innocent".
|
||||
(and (string-suffix-p "/" tf)
|
||||
(string-prefix-p tf file)))
|
||||
(setq trusted t)))
|
||||
trusted))))))))
|
||||
|
||||
;; This is an odd variable IMO.
|
||||
;; You might wonder why it is needed, when we could just do:
|
||||
|
|
Loading…
Reference in New Issue