From: Stefan Monnier Date: Fri, 8 Mar 2024 17:44:38 +0000 (-0500) Subject: (dir-locals-collect-variables): Avoid spurious safety warnings X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=00407a6cc4054ced373fa930f5ffd015d08ac3c6;p=emacs.git (dir-locals-collect-variables): Avoid spurious safety warnings * lisp/files.el (dir-locals-collect-variables): Silence warnings for extra parents' variables. (cherry picked from commit 454a55dbd963d4b07c0dc0f6d540cc5fd4b4faa7) --- diff --git a/lisp/files.el b/lisp/files.el index 02c92415414..4dd591574f8 100644 --- a/lisp/files.el +++ b/lisp/files.el @@ -4469,6 +4469,12 @@ to see whether it should be considered." (funcall predicate key) (or (not key) (derived-mode-p key))) + ;; If KEY is an extra parent it may remain not loaded + ;; (hence with some of its mode-specific vars missing their + ;; `safe-local-variable' property), leading to spurious + ;; prompts about unsafe vars (bug#68246). + (if (and (symbolp key) (autoloadp (indirect-function key))) + (ignore-errors (autoload-do-load (indirect-function key)))) (let* ((alist (cdr entry)) (subdirs (assq 'subdirs alist))) (if (or (not subdirs)