[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
scratch/package-vc-fixes 828c9881d6 2/3: Have 'package-vc-selected-packa
From: |
Philip Kaludercic |
Subject: |
scratch/package-vc-fixes 828c9881d6 2/3: Have 'package-vc-selected-packages' consider all installed packages |
Date: |
Sat, 12 Nov 2022 03:28:09 -0500 (EST) |
branch: scratch/package-vc-fixes
commit 828c9881d6aa5c415ee13ce7a2d629bea6cd2c67
Author: Philip Kaludercic <philipk@posteo.net>
Commit: Philip Kaludercic <philipk@posteo.net>
Have 'package-vc-selected-packages' consider all installed packages
* lisp/emacs-lisp/package-vc.el
(package-vc-install-selected-packages): Consider more than just one
value in `package-alist', in case there are multiple installations.
---
lisp/emacs-lisp/package-vc.el | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/lisp/emacs-lisp/package-vc.el b/lisp/emacs-lisp/package-vc.el
index 97dd8b4b5f..8dabd42771 100644
--- a/lisp/emacs-lisp/package-vc.el
+++ b/lisp/emacs-lisp/package-vc.el
@@ -120,9 +120,8 @@ the `clone' function."
(pcase-dolist (`(,name . ,spec) package-vc-selected-packages)
(when (stringp name)
(setq name (intern name)))
- (let ((pkg-desc (cadr (assoc name package-alist #'string=))))
- (unless (and name (package-installed-p name)
- (package-vc-p pkg-desc))
+ (let ((pkg-descs (assoc name package-alist #'string=)))
+ (unless (seq-some #'package-vc-p (cdr pkg-descs))
(cond
((null spec)
(package-vc-install name))
@@ -130,7 +129,7 @@ the `clone' function."
(package-vc-install name nil spec))
((listp spec)
(package-vc--archives-initialize)
- (package-vc--unpack pkg-desc spec)))))))
+ (package-vc--unpack (cadr pkg-descs) spec)))))))
;;;###autoload
(defcustom package-vc-selected-packages '()