* files.el (dir-locals-read-from-file): Mention dir-locals in any error message.
This commit is contained in:
parent
ed39e4e24d
commit
fd075e7b2b
2 changed files with 20 additions and 13 deletions
|
@ -1,3 +1,8 @@
|
|||
2012-05-06 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* files.el (dir-locals-read-from-file):
|
||||
Mention dir-locals in any error message.
|
||||
|
||||
2012-05-06 Chong Yidong <cyd@gnu.org>
|
||||
|
||||
* emacs-lisp/package.el (package-built-in-p): Handle the `emacs'
|
||||
|
|
|
@ -3623,19 +3623,21 @@ FILE is the name of the file holding the variables to apply.
|
|||
The new class name is the same as the directory in which FILE
|
||||
is found. Returns the new class name."
|
||||
(with-temp-buffer
|
||||
;; Errors reading the file are not very informative.
|
||||
;; Eg just "Error: (end-of-file)" does not give any clue that the
|
||||
;; problem is related to dir-locals.
|
||||
(with-demoted-errors
|
||||
(insert-file-contents file)
|
||||
(let* ((dir-name (file-name-directory file))
|
||||
(class-name (intern dir-name))
|
||||
(variables (let ((read-circle nil))
|
||||
(read (current-buffer)))))
|
||||
(dir-locals-set-class-variables class-name variables)
|
||||
(dir-locals-set-directory-class dir-name class-name
|
||||
(nth 5 (file-attributes file)))
|
||||
class-name))))
|
||||
;; This is with-demoted-errors, but we want to mention dir-locals
|
||||
;; in any error message.
|
||||
(let ((err (make-symbol "err")))
|
||||
(condition-case err
|
||||
(progn
|
||||
(insert-file-contents file)
|
||||
(let* ((dir-name (file-name-directory file))
|
||||
(class-name (intern dir-name))
|
||||
(variables (let ((read-circle nil))
|
||||
(read (current-buffer)))))
|
||||
(dir-locals-set-class-variables class-name variables)
|
||||
(dir-locals-set-directory-class dir-name class-name
|
||||
(nth 5 (file-attributes file)))
|
||||
class-name))
|
||||
(error (message "Error reading dir-locals: %S" err) nil)))))
|
||||
|
||||
(defun hack-dir-local-variables ()
|
||||
"Read per-directory local variables for the current buffer.
|
||||
|
|
Loading…
Add table
Reference in a new issue