]> git.eshelyaron.com Git - emacs.git/commitdiff
* loadup.el (load-prefer-newer): Set non-nil when dumping.
authorGlenn Morris <rgm@gnu.org>
Sun, 1 Jun 2014 02:36:40 +0000 (19:36 -0700)
committerGlenn Morris <rgm@gnu.org>
Sun, 1 Jun 2014 02:36:40 +0000 (19:36 -0700)
--eval doesn't work (or not early enough) during dumping.
Making load-prefer-newer non-nil by default would be simpler...

Fixes: debbugs:17629
lisp/ChangeLog
lisp/loadup.el

index 5b0affbbf2b399c862c119b6f72b8acb425e86b4..f86520209202455bf5cbba067914b5453f680c90 100644 (file)
@@ -1,3 +1,7 @@
+2014-06-01  Glenn Morris  <rgm@gnu.org>
+
+       * loadup.el (load-prefer-newer): Set non-nil when dumping.  (Bug#17629)
+
 2014-05-31  Glenn Morris  <rgm@gnu.org>
 
        * files.el (locate-dominating-file): Expand file argument.  (Bug#17641)
index 89fcaa30b0cfeaa1c74404e95cdb11af0773a79e..b911e9f1768659befa8910ade8489eeef27d3136 100644 (file)
 ;; This is a poor man's `last', since we haven't loaded subr.el yet.
 (if (or (equal (member "bootstrap" command-line-args) '("bootstrap"))
        (equal (member "dump" command-line-args) '("dump")))
-    ;; To reduce the size of dumped Emacs, we avoid making huge
-    ;; char-tables.
-    (setq inhibit-load-charset-map t))
+    (progn
+      ;; To reduce the size of dumped Emacs, we avoid making huge char-tables.
+      (setq inhibit-load-charset-map t)
+      ;; --eval gets handled too late.
+      (defvar load--prefer-newer load-prefer-newer)
+      (setq load-prefer-newer t)))
 
 ;; We don't want to have any undo records in the dumped Emacs.
 (set-buffer "*scratch*")
@@ -358,6 +361,12 @@ lost after dumping")))
 
 (remove-hook 'after-load-functions (lambda (f) (garbage-collect)))
 
+(if (boundp 'load--prefer-newer)
+    (progn
+      (setq load-prefer-newer load--prefer-newer)
+      (put 'load-prefer-newer 'standard-value load--prefer-newer)
+      (makunbound 'load--prefer-newer)))
+
 (setq inhibit-load-charset-map nil)
 (clear-charset-maps)
 (garbage-collect)