Subject: bug#24643: 25.1; Don't call package--ensure-init-file if initialized during startup

From: Alex <[email-masked]>
Date: Sat, 08 Oct 2016 11:19:58 -0600

'package-initialize' contains this if expression:

#+BEGIN_SRC elisp
  (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))
#+END_SRC

This calls 'package--ensure-init-file' even when a user may call
'package-initialize' in *one* of their init files, but not
'user-init-file'.

I think the condition should be replaced with:

#+BEGIN_SRC elisp
(not after-init-time)
#+END_SRC

Then it won't ensure when the user has initialized their packages
somewhere else.