]> git.eshelyaron.com Git - emacs.git/commitdiff
Always set `load-true-file-name' where `load-file-name' is set too.
authorAndrea Corallo <akrl@sdf.org>
Tue, 14 Apr 2020 18:58:41 +0000 (19:58 +0100)
committerAndrea Corallo <akrl@sdf.org>
Tue, 14 Apr 2020 18:58:41 +0000 (19:58 +0100)
Fix bug#40620.

* lisp/cus-dep.el (custom-make-dependencies): Set
load-true-file-name.

* lisp/emacs-lisp/package.el (package-quickstart-refresh):
Likewise.

* lisp/international/mule.el (load-with-code-conversion):
Likewise.

* lisp/loadup.el (load-true-file-name): Likewise.

lisp/cus-dep.el
lisp/emacs-lisp/autoload.el
lisp/emacs-lisp/package.el
lisp/international/mule.el
lisp/loadup.el

index fd307a5c04e658236178c08ab3ebb921c3193c62..e2c2ebe5f42c5868fc9ce1c8100c8adc22f045c6 100644 (file)
@@ -90,6 +90,7 @@ Usage: emacs -batch -l ./cus-dep.el -f custom-make-dependencies DIRS"
             (string-match "\\`\\(.*\\)\\.el\\'" file)
             (let ((name (or generated-autoload-load-name ; see bug#5277
                             (file-name-nondirectory (match-string 1 file))))
+                  (load-true-file-name file)
                   (load-file-name file))
               (if (save-excursion
                     (re-search-forward
index 6180bee2aa709de30f13b0d9e0c2ae24446a3d1b..d9a43c23299e8f7fdd6d6190dc1ef1c94d5c0750 100644 (file)
@@ -167,7 +167,9 @@ expression, in which case we want to handle forms differently."
                        define-inline cl-defun cl-defmacro cl-defgeneric
                        cl-defstruct pcase-defmacro))
            (macrop car)
-          (setq expand (let ((load-file-name file)) (macroexpand form)))
+          (setq expand (let ((load-true-file-name file)
+                              (load-file-name file))
+                          (macroexpand form)))
           (memq (car expand) '(progn prog1 defalias)))
       (make-autoload expand file 'expansion)) ;Recurse on the expansion.
 
index 4312ab9ca9a57cff4d538c81bff5d0057302e182..b33e4897a013c087bdfc0805c40e9de21c99e3d4 100644 (file)
@@ -3965,7 +3965,8 @@ activations need to be changed, such as when `package-load-list' is modified."
                 (let ((load-suffixes '(".el" ".elc")))
                   (locate-library (package--autoloads-file-name pkg))))
                (pfile (prin1-to-string file)))
-          (insert "(let ((load-file-name " pfile "))\n")
+          (insert "(let ((load-true-file-name " pfile ")\
+(load-file-name " pfile "))\n")
           (insert-file-contents file)
           ;; Fixup the special #$ reader form and throw away comments.
           (while (re-search-forward "#\\$\\|^;\\(.*\n\\)" nil 'move)
index 72e8cad9d62f586968db0e57f980b3090ca08756..363df13dfe6d23a59d7d3fd28a51c137eba385dc 100644 (file)
@@ -320,8 +320,9 @@ Return t if file exists."
       (when purify-flag
        (push (purecopy file) preloaded-file-list))
       (unwind-protect
-         (let ((load-file-name fullname)
-               (set-auto-coding-for-load t)
+         (let ((load-true-file-name fullname)
+                (load-file-name fullname)
+                (set-auto-coding-for-load t)
                (inhibit-file-name-operation nil))
            (with-current-buffer buffer
               ;; So that we don't get completely screwed if the
index 3cc47bc91fae697f75f29fdf9c2ac6b3ca75417d..7cf2cb01c33598fcc08bef32952b99f6cdb561ac 100644 (file)
@@ -566,6 +566,7 @@ lost after dumping")))
 ;; Don't keep `load-file-name' set during the top-level session!
 ;; Otherwise, it breaks a lot of code which does things like
 ;; (or load-file-name byte-compile-current-file).
+(setq load-true-file-name nil)
 (setq load-file-name nil)
 (eval top-level)