From 8010552bfabbd6d6e3dc9df784dacb49fb99f022 Mon Sep 17 00:00:00 2001 From: Jim Myhrberg Date: Sun, 4 Oct 2020 16:05:40 +0100 Subject: [PATCH] chore(native-comp): remove empty files from eln cache directory --- early-init.el | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/early-init.el b/early-init.el index 3625f89..07eee19 100644 --- a/early-init.el +++ b/early-init.el @@ -10,8 +10,16 @@ (setq comp-speed 2) (when (boundp 'comp-eln-load-path) - (setcar comp-eln-load-path - (expand-file-name "cache/eln-cache/" user-emacs-directory))) + (let ((eln-cache-dir (expand-file-name "cache/eln-cache/" + user-emacs-directory)) + (find-exec (executable-find "find"))) + (setcar comp-eln-load-path eln-cache-dir) + ;; Quitting emacs while native compilation in progress can leave zero byte + ;; sized *.eln files behind. Hence delete such files during startup. + (when find-exec + (call-process find-exec nil nil nil eln-cache-dir + "-name" "*.eln" "-size" "0" "-delete" "-or" + "-name" "*.eln.tmp" "-size" "0" "-delete")))) ;; Defer garbage collection further back in the startup process (setq gc-cons-threshold most-positive-fixnum)