diff options
author | Noam Postavsky <npostavs@gmail.com> | 2017-02-22 21:12:41 -0500 |
---|---|---|
committer | Noam Postavsky <npostavs@gmail.com> | 2017-02-26 11:11:40 -0500 |
commit | 6b6cc56e728a4d8b5ccac86ac393be7cd29207e2 (patch) | |
tree | a99cac70d53b22f9ac095b0d2d9dedc9eab8d0ec /lisp/emacs-lisp | |
parent | 2bb467a2e2fc70d387ca9a174d5d3a1417a13008 (diff) | |
download | emacs-6b6cc56e728a4d8b5ccac86ac393be7cd29207e2.tar.gz |
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).
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r-- | lisp/emacs-lisp/package.el | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el index 6728f1b80b1..8d5fac96cfb 100644 --- a/lisp/emacs-lisp/package.el +++ b/lisp/emacs-lisp/package.el @@ -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 |