summaryrefslogtreecommitdiff
path: root/apt-pkg/upgrade.cc
diff options
context:
space:
mode:
authorJulian Andres Klode <jak@debian.org>2022-09-28 15:13:12 +0000
committerJulian Andres Klode <jak@debian.org>2022-09-28 15:13:12 +0000
commitf8497bb5e443ef196e5d1bee43cc82ee57a8e3dd (patch)
treefbac0c4a04ca633431b69f59f62c655780627c50 /apt-pkg/upgrade.cc
parent8d3540402799860eb76cd112d82efb4275f19e46 (diff)
parent5f5a8deedffac3cdeeb2f178d910d3759d366e8e (diff)
Merge branch 'pu/phased-updates-fixes-2022-09-23' into 'main'
phased update improvements See merge request apt-team/apt!262
Diffstat (limited to 'apt-pkg/upgrade.cc')
-rw-r--r--apt-pkg/upgrade.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/apt-pkg/upgrade.cc b/apt-pkg/upgrade.cc
index a7e18026b..e3e98e5c6 100644
--- a/apt-pkg/upgrade.cc
+++ b/apt-pkg/upgrade.cc
@@ -107,6 +107,7 @@ struct PhasedUpgrader
continue;
Cache.MarkKeep(I, false, false);
+ Cache.MarkProtected(I);
if (Fix != nullptr)
Fix->Protect(I);
}
@@ -133,6 +134,8 @@ static bool pkgDistUpgrade(pkgDepCache &Cache, OpProgress * const Progress)
pkgDepCache::ActionGroup group(Cache);
+ PhasedUpgrader().HoldBackIgnoredPhasedUpdates(Cache, nullptr);
+
/* Upgrade all installed packages first without autoinst to help the resolver
in versioned or-groups to upgrade the old solver instead of installing
a new one (if the old solver is not the first one [anymore]) */