Don't call package--ensure-init-file if initialized during startup
* lisp/emacs-lisp/package.el (package-initialize): Check `after-init-time' rather than `load-file-name' to decide if `package--ensure-init-file' should be called. Depending on `load-file-name' will fail if the user calls `pacakge-initialize' in file which is loaded from the init file (Bug#24643, Bug#25819).
This commit is contained in:
parent
2bb467a2e2
commit
6b6cc56e72
1 changed files with 7 additions and 7 deletions
|
@ -1445,13 +1445,13 @@ individual packages after calling `package-initialize' -- this is
|
|||
taken care of by `package-initialize'."
|
||||
(interactive)
|
||||
(setq package-alist nil)
|
||||
(if (equal user-init-file load-file-name)
|
||||
;; If `package-initialize' is being called as part of loading
|
||||
;; the init file, it's obvious we don't need to ensure-init.
|
||||
(setq package--init-file-ensured t
|
||||
;; And likely we don't need to run it again after init.
|
||||
package-enable-at-startup nil)
|
||||
(package--ensure-init-file))
|
||||
(if after-init-time
|
||||
(package--ensure-init-file)
|
||||
;; If `package-initialize' is before we finished loading the init
|
||||
;; file, it's obvious we don't need to ensure-init.
|
||||
(setq package--init-file-ensured t
|
||||
;; And likely we don't need to run it again after init.
|
||||
package-enable-at-startup nil))
|
||||
(package-load-all-descriptors)
|
||||
(package-read-all-archive-contents)
|
||||
(unless no-activate
|
||||
|
|
Loading…
Add table
Reference in a new issue