summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
authorAndrea Corallo <akrl@sdf.org>2020-04-25 14:45:21 +0100
committerAndrea Corallo <akrl@sdf.org>2020-04-25 15:12:37 +0100
commitbab36619fb26059e3ac7c794738be4314c681e08 (patch)
treedffd9cd2692080cf4e5e8854b1677d3dac8df6ec /lisp/emacs-lisp
parente208de9d259cb50c19d1f2a5086fd8301ac71781 (diff)
downloademacs-bab36619fb26059e3ac7c794738be4314c681e08.tar.gz
emacs-bab36619fb26059e3ac7c794738be4314c681e08.tar.bz2
emacs-bab36619fb26059e3ac7c794738be4314c681e08.zip
Fix deferred-compilation for double compilation (bug#40838).
* lisp/emacs-lisp/comp.el (native-compile-async): Prevent double compilation (bug#40838).
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/comp.el4
1 files changed, 3 insertions, 1 deletions
diff --git a/lisp/emacs-lisp/comp.el b/lisp/emacs-lisp/comp.el
index 1369dd115dd..42c40aaa43a 100644
--- a/lisp/emacs-lisp/comp.el
+++ b/lisp/emacs-lisp/comp.el
@@ -2327,7 +2327,9 @@ LOAD can be nil t or 'late."
nil "Trying to queue %s with LOAD %s but this is already \
queued with LOAD %"
file load (cdr entry))
- (setf comp-files-queue (append comp-files-queue `((,file . ,load))))))
+ ;; Make sure we are not already compiling `file' (bug#40838).
+ (unless (gethash file comp-async-compilations)
+ (setf comp-files-queue (append comp-files-queue `((,file . ,load)))))))
(when (zerop (comp-async-runnings))
(comp-run-async-workers)
(message "Compilation started."))))