summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/package.el
diff options
context:
space:
mode:
authorKenichi Handa <handa@m17n.org>2010-11-01 16:53:08 +0900
committerKenichi Handa <handa@m17n.org>2010-11-01 16:53:08 +0900
commitf6f3366160e26ff5984f287e60616ec9f90acfa3 (patch)
tree9f5c8dc73cad6319a8fdf1ab22fd4e9901089e50 /lisp/emacs-lisp/package.el
parent65b6b59a8030b09d2a32ee88837a061e22751988 (diff)
parentca7c89d8f52b34f694031f496600f949640ff9c4 (diff)
downloademacs-f6f3366160e26ff5984f287e60616ec9f90acfa3.tar.gz
emacs-f6f3366160e26ff5984f287e60616ec9f90acfa3.tar.bz2
emacs-f6f3366160e26ff5984f287e60616ec9f90acfa3.zip
merge trunk
Diffstat (limited to 'lisp/emacs-lisp/package.el')
-rw-r--r--lisp/emacs-lisp/package.el12
1 files changed, 9 insertions, 3 deletions
diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
index ea4c14e7cda..454036018be 100644
--- a/lisp/emacs-lisp/package.el
+++ b/lisp/emacs-lisp/package.el
@@ -1037,10 +1037,13 @@ The variable `package-load-list' controls which packages to load."
(defun describe-package (package)
"Display the full documentation of PACKAGE (a symbol)."
(interactive
- (let* ((packages (append (mapcar 'car package-alist)
+ (let* ((guess (function-called-at-point))
+ packages val)
+ ;; Initialize the package system if it's not.
+ (unless package-alist
+ (package-initialize))
+ (setq packages (append (mapcar 'car package-alist)
(mapcar 'car package-archive-contents)))
- (guess (function-called-at-point))
- val)
(unless (memq guess packages)
(setq guess nil))
(setq packages (mapcar 'symbol-name packages))
@@ -1617,6 +1620,9 @@ list; the default is to display everything in `package-alist'."
Fetches the updated list of packages before displaying.
The list is displayed in a buffer named `*Packages*'."
(interactive)
+ ;; Initialize the package system if necessary.
+ (unless package-alist
+ (package-initialize))
(package-refresh-contents)
(package--list-packages))