summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulian Andres Klode <julian.klode@canonical.com>2024-06-13 17:54:13 +0200
committerJulian Andres Klode <julian.klode@canonical.com>2024-07-01 17:15:54 +0200
commit7217910e75ce32938d28f9d653dec6b1d18e05b7 (patch)
tree988c18b69d5f995bedd02c18ea0ec89fe18008d8
parent0b40f9f49b2396c1daf8dc417042f74eee92f7e3 (diff)
solver3: Unmark packages before setting any in ToDepCache
We should set the Mark/Garbage flags for all packages so we don't end up in an inconsistent state, so reset the flags for each package before evaluating further.
-rw-r--r--apt-pkg/solver3.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/apt-pkg/solver3.cc b/apt-pkg/solver3.cc
index f94fa6736..f7f72b1a4 100644
--- a/apt-pkg/solver3.cc
+++ b/apt-pkg/solver3.cc
@@ -992,6 +992,8 @@ bool APT::Solver::ToDepCache(pkgDepCache &depcache)
pkgDepCache::ActionGroup group(depcache);
for (auto P = cache.PkgBegin(); not P.end(); P++)
{
+ depcache[P].Marked = 0;
+ depcache[P].Garbage = 0;
if ((*this)[P].decision == Decision::MUST)
{
for (auto V = P.VersionList(); not V.end(); V++)