emacs-31 ed4a3e251b5: Prevent 'package-menu--mark-upgrades-1' from blocking

Philip Kaludercic <[email protected]> Fri, 31 Jul 2026 16:16:59 -0400 (EDT)
Newsgroups gmane.emacs.diffs
Message-ID <[email protected]>
branch: emacs-31
commit ed4a3e251b5de036f122419288e0f7c34ce03549
Author: Philip Kaludercic <[email protected]>
Commit: Philip Kaludercic <[email protected]>

    Prevent 'package-menu--mark-upgrades-1' from blocking
    
    * lisp/emacs-lisp/package.el (package-menu--mark-upgrades-1):
    If 'package-retention-policy' applies, still move forward a line
    so that the loop can consider the next package.  (Bug#81373)
---
 lisp/emacs-lisp/package.el | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
index da4642aeb78..ad3f602d621 100644
--- a/lisp/emacs-lisp/package.el
+++ b/lisp/emacs-lisp/package.el
@@ -3978,9 +3978,10 @@ Implementation of `package-menu-mark-upgrades'."
                   ((equal pkg-desc upgrade)
                    (package-menu-mark-install))
                   (t
-                   (unless (package-matches-selector-p
-                            package-retention-policy
-                            pkg-desc)
+                   (if (package-matches-selector-p
+                        package-retention-policy
+                        pkg-desc)
+                       (forward-line)
                      (package-menu-mark-delete)))))))
       (message "Packages marked for upgrading: %d"
                (length upgrades)))))