From: Stefan Monnier Date: Sat, 17 May 2025 18:23:34 +0000 (-0400) Subject: editorconfig.el: Fix bug#78097 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=28e539e13eca7e4cc0663804435f2c1b133f8362;p=emacs.git editorconfig.el: Fix bug#78097 When there is no `.editorconfig` variable, the `file-name-directory` call can signal an error, but that can happen only if `editorconfig-get-local-variables-functions` added entries "out of thin air". So just skip running that hook to avoid this corner case. * lisp/editorconfig.el (editorconfig--get-dir-local-variables): Don't run `editorconfig-get-local-variables-functions` when we found no EditorConfig settings. (cherry picked from commit 28a8bd6061d99c71ca2ac17868dfc8cf36a1c728) --- diff --git a/lisp/editorconfig.el b/lisp/editorconfig.el index 0c219e13e4e..48e69e6180c 100644 --- a/lisp/editorconfig.el +++ b/lisp/editorconfig.el @@ -703,7 +703,8 @@ Meant to be used on `auto-coding-functions'." Meant to be used on `hack-dir-local-get-variables-functions'." (when (stringp buffer-file-name) (let* ((props (editorconfig-call-get-properties-function buffer-file-name)) - (alist (editorconfig--get-local-variables props))) + (alist (if (< 0 (hash-table-count props)) + (editorconfig--get-local-variables props)))) ;; FIXME: If there's `/foo/.editorconfig', `/foo/bar/.dir-locals.el', ;; and `/foo/bar/baz/.editorconfig', it would be nice to return two ;; pairs here, so that hack-dir-local can give different priorities