fix: "symbol's value as variable is void: \213" error (part 2)
See6f1c0f7cc7
for part 1. Turns out startup.elc likely exists on most Emacs installations (and, since it's so integral to Emacs, it likely gets special treatment), so it was a poor heuristic for this fix. Instead, a more variable target would be calc-loaddefs.el. On some systems, only calc-loaddefs.el.gz exists (in which case, we should turn off the optimization). On others, calc-loaddefs.el exists (so I'll assume it's safe to leave them on). I won't check for calc-loaddefs.elc because it doesn't matter; calc.el explicitly calls (load "calc-loaddefs.el") so it is never loaded. Of course, you can sidestep the entire issue by building Emacs with --without-compress-install, but it's not practical for users to know/want to do that. Amend:6f1c0f7cc7
This commit is contained in:
parent
6f1c0f7cc7
commit
1d8c61698b
1 changed files with 10 additions and 5 deletions
|
@ -45,13 +45,18 @@ one wants that.")
|
|||
(signal 'doom-error
|
||||
(list "The installed version of Doom has changed since last 'doom sync' ran"
|
||||
"Run 'doom sync' to bring Doom up to speed"))))
|
||||
;; If the bundled elisp for this Emacs install isn't byte-compiled,
|
||||
;; disengage the `file-name-handler-alist' optimization early to
|
||||
;; prevent encoding errors when Emacs tries to read gzipped elisp.
|
||||
(unless (locate-file "startup.elc" (get 'load-path 'initial-value))
|
||||
;; HACK If the bundled elisp for this Emacs install isn't
|
||||
;; byte-compiled, disengage the `file-name-handler-alist'
|
||||
;; optimization early to prevent encoding errors when Emacs tries to
|
||||
;; read gzipped elisp.
|
||||
;;
|
||||
;; calc-loaddefs.el is a good heuristic for this because calc.el
|
||||
;; explicitly tries to load the un-compiled calc-loaddefs.el. If it
|
||||
;; doesn't exist, it'll go for calc-loaddefs.el.gz instead.
|
||||
(unless (locate-file "calc-loaddefs.el" (get 'load-path 'initial-value) nil)
|
||||
`((unless noninteractive
|
||||
(doom-reset-file-handler-alist-h)
|
||||
(remove-hook 'emacs-startup-hook #'doom-reset-file-handler-alist-h 101))))
|
||||
(remove-hook 'emacs-startup-hook #'doom-reset-file-handler-alist-h))))
|
||||
(cl-loop for var in doom-autoloads-cached-vars
|
||||
when (boundp var)
|
||||
collect `(set ',var ',(symbol-value var)))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue