aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNoam Postavsky2018-11-13 08:25:35 -0500
committerNoam Postavsky2018-11-13 08:25:35 -0500
commit197bf4eaac0ed98549f4343a653ba21aac47c855 (patch)
tree6266f31a55ef0ebdd2f05706a3b850a6edece5d7
parentb8d50754767e4d2d82b1b5d46c21d7a0584a4d93 (diff)
downloademacs-197bf4eaac0ed98549f4343a653ba21aac47c855.tar.gz
emacs-197bf4eaac0ed98549f4343a653ba21aac47c855.zip
Fix build fail on files.el change (Bug#32352)
* lisp/files.el (dir-locals-read-from-dir): Reduce scope of `read-circle' let-binding to go around the `read' call only. Otherwise it can interfere with loading of files which use the circular read syntax (e.g., executing the setf expression in `dir-locals-set-class-variables' may require loading gv.elc).
-rw-r--r--lisp/files.el4
1 files changed, 2 insertions, 2 deletions
diff --git a/lisp/files.el b/lisp/files.el
index 47f7acf92cc..cfc178738c7 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -4096,7 +4096,6 @@ apply).
4096Return the new class name, which is a symbol named DIR." 4096Return the new class name, which is a symbol named DIR."
4097 (let* ((class-name (intern dir)) 4097 (let* ((class-name (intern dir))
4098 (files (dir-locals--all-files dir)) 4098 (files (dir-locals--all-files dir))
4099 (read-circle nil)
4100 ;; If there was a problem, use the values we could get but 4099 ;; If there was a problem, use the values we could get but
4101 ;; don't let the cache prevent future reads. 4100 ;; don't let the cache prevent future reads.
4102 (latest 0) (success 0) 4101 (latest 0) (success 0)
@@ -4111,7 +4110,8 @@ Return the new class name, which is a symbol named DIR."
4111 (insert-file-contents file) 4110 (insert-file-contents file)
4112 (let ((newvars 4111 (let ((newvars
4113 (condition-case-unless-debug nil 4112 (condition-case-unless-debug nil
4114 (read (current-buffer)) 4113 (let ((read-circle nil))
4114 (read (current-buffer)))
4115 (end-of-file nil)))) 4115 (end-of-file nil))))
4116 (setq variables 4116 (setq variables
4117 ;; Try and avoid loading `map' since that also loads cl-lib 4117 ;; Try and avoid loading `map' since that also loads cl-lib