summaryrefslogtreecommitdiff
path: root/lisp/files.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/files.el')
-rw-r--r--lisp/files.el6
1 files changed, 4 insertions, 2 deletions
diff --git a/lisp/files.el b/lisp/files.el
index be6cdfeb9b7..f050713e135 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -2061,7 +2061,8 @@ is specified, returning t if it is specified."
(put 'compile-command 'safe-local-variable 'stringp)
(defun risky-local-variable-p (sym val)
- "Non-nil if SYM could be dangerous as a file-local variable with value VAL."
+ "Non-nil if SYM could be dangerous as a file-local variable with value VAL.
+If VAL is nil, the question is whether any value might be dangerous."
(let ((safep (get sym 'safe-local-variable)))
(or (memq sym ignored-local-variables)
(get sym 'risky-local-variable)
@@ -2071,7 +2072,8 @@ is specified, returning t if it is specified."
;; If the safe-local-variable property isn't t or nil,
;; then it must return non-nil on the proposed value to be safe.
(and (not (memq safep '(t nil)))
- (not (funcall safep val))))))
+ (or (null val)
+ (not (funcall safep val)))))))
(defcustom safe-local-eval-forms nil
"*Expressions that are considered \"safe\" in an `eval:' local variable.