* lisp/emacs-lisp/package.el (package-menu--perform-transaction):

Properly delete packages.  (Bug#20836)
This commit is contained in:
Artur Malabarba 2015-06-18 09:23:54 +01:00
parent c09f1d9c62
commit 517ab6238a

View file

@ -2988,19 +2988,17 @@ objects removed."
(redisplay 'force)
;; 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"))
(force-mode-line-update)
(redisplay 'force)
(dolist (elt (package--sort-by-dependence delete-list))
(condition-case-unless-debug err
(let ((inhibit-message package-menu-async))
(package-delete elt nil 'nosave))
(error (message "Error trying to delete `%s': %S"
(package-desc-full-name elt)
err)))))))
(package-install pkg 'dont-select))))
(let ((package-menu--transaction-status ":Deleting"))
(force-mode-line-update)
(redisplay 'force)
(dolist (elt (package--sort-by-dependence delete-list))
(condition-case-unless-debug err
(let ((inhibit-message package-menu-async))
(package-delete elt nil 'nosave))
(error (message "Error trying to delete `%s': %S"
(package-desc-full-name elt)
err))))))
(defun package--update-selected-packages (add remove)
"Update the `package-selected-packages' list according to ADD and REMOVE.