summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorArtur Malabarba <bruce.connor.am@gmail.com>2015-05-21 17:10:40 +0100
committerArtur Malabarba <bruce.connor.am@gmail.com>2015-05-21 17:10:40 +0100
commita31ca4ef50efae51f9281be11cb6668789a57f08 (patch)
tree063008eaea3601230cc3ce1d93272f9cc1ee0668 /lisp
parent60c1ea3d209308b08bc66585044cae8d1df56def (diff)
downloademacs-a31ca4ef50efae51f9281be11cb6668789a57f08.tar.gz
* lisp/emacs-lisp/package.el: Fix selected-package logic
(package-menu-execute): Mark as selected all non-upgrade packages being installed. (package-menu--perform-transaction): Don't mark anything.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/emacs-lisp/package.el13
1 files changed, 7 insertions, 6 deletions
diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
index 444adf0d127..79f37e7def2 100644
--- a/lisp/emacs-lisp/package.el
+++ b/lisp/emacs-lisp/package.el
@@ -2943,12 +2943,9 @@ objects removed."
(format status-format (cl-incf i)))
(force-mode-line-update)
(redisplay 'force)
- (package-install
- ;; Don't mark as selected if it's a new version of an
- ;; installed package.
- pkg (and (not (package-installed-p pkg))
- (package-installed-p
- (package-desc-name pkg))))))
+ ;; Don't mark as selected, `package-menu-execute' already
+ ;; does that.
+ (package-install pkg 'dont-select)))
;; Once there are no more packages to install, proceed to
;; deletion.
(let ((package-menu--transaction-status ":Deleting"))
@@ -2995,6 +2992,10 @@ Optional argument NOQUERY non-nil means do not ask the user to confirm."
(when .upgrade (format "Upgrad__ %s" (length .upgrade)))
"]")))
(message (replace-regexp-in-string "__" "ing" message-template) "started")
+ ;; Packages being upgraded are not marked as selected.
+ (package--save-selected-packages
+ (remove-dups (append (mapcar #'package-desc-name .install)
+ package-selected-packages)))
(package-menu--perform-transaction install-list delete-list)
(when package-selected-packages
(if-let ((removable (package--removable-packages)))