diff options
| author | Glenn Morris <rgm@gnu.org> | 2011-02-24 00:02:45 -0800 |
|---|---|---|
| committer | Glenn Morris <rgm@gnu.org> | 2011-02-24 00:02:45 -0800 |
| commit | 07915ed93c1a21776f7371e615b43d0d79eaebfd (patch) | |
| tree | 4418dab401b93bc491fb70b899931c1454751f04 | |
| parent | ebe401f69718e17144fc7f7a8ab36f7c12452f2a (diff) | |
| download | emacs-07915ed93c1a21776f7371e615b43d0d79eaebfd.tar.gz | |
More dir-locals fixes for files.el.
* lisp/files.el (hack-local-variables-confirm, hack-local-variables-filter):
Doc fix (say _which_ directory `dir-name' is).
(hack-dir-local-variables): Fix setting of `dir-name'.
Previous value seems clearly wrong. Eg put a risky variable in a
dir-locals file, visit a file in a subdirectory, see which directory
it says the risky variables come from. It should be the one with the
associated directory variables, not the one containing the visited file.
| -rw-r--r-- | lisp/ChangeLog | 3 | ||||
| -rw-r--r-- | lisp/files.el | 15 |
2 files changed, 9 insertions, 9 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index d77e6b7ccd8..cb0708aa0fa 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,8 @@ 2011-02-24 Glenn Morris <rgm@gnu.org> + * files.el (hack-dir-local-variables): Fix setting of `dir-name'. + (hack-local-variables-confirm, hack-local-variables-filter): Doc fix. + * files.el (dir-locals-find-file): Doc fix. Fix the check for cache elements that have no associated file, and the mtime check for those that do. diff --git a/lisp/files.el b/lisp/files.el index e4cc782b1d1..5890bf9b8c9 100644 --- a/lisp/files.el +++ b/lisp/files.el @@ -2919,8 +2919,8 @@ variable to set.") ALL-VARS is the list of all variables to be set up. UNSAFE-VARS is the list of those that aren't marked as safe or risky. RISKY-VARS is the list of those that are marked as risky. -DIR-NAME is a directory name if these settings come from -directory-local variables, or nil otherwise." +If these settings come from directory-local variables, then +DIR-NAME is the name of the associated directory. Otherwise it is nil." (if noninteractive nil (save-window-excursion @@ -3062,8 +3062,8 @@ VARIABLES is the alist of variable-value settings. This alist is `enable-local-eval', `enable-local-variables', and (if necessary) user interaction. The results are added to `file-local-variables-alist', without applying them. -DIR-NAME is a directory name if these settings come from - directory-local variables, or nil otherwise." +If these settings come from directory-local variables, then +DIR-NAME is the name of the associated directory. Otherwise it is nil." ;; Find those variables that we may want to save to ;; `safe-local-variable-values'. (let (all-vars risky-vars unsafe-vars) @@ -3547,11 +3547,8 @@ and `file-local-variables-alist', without applying them." (dir-name nil)) (cond ((stringp variables-file) - ;; FIXME seems like the wrong dir-name. - (setq dir-name (if (buffer-file-name) - (file-name-directory (buffer-file-name)) - default-directory)) - (setq class (dir-locals-read-from-file variables-file))) + (setq dir-name (file-name-directory variables-file) + class (dir-locals-read-from-file variables-file))) ((consp variables-file) (setq dir-name (nth 0 variables-file)) (setq class (nth 1 variables-file)))) |
