summaryrefslogtreecommitdiff
path: root/apt-pkg/depcache.cc
diff options
context:
space:
mode:
authorJulian Andres Klode <jak@debian.org>2025-10-25 21:24:10 +0200
committerJulian Andres Klode <jak@debian.org>2025-10-25 22:16:54 +0200
commit74636b64a7ee56637a3ce4ddc1d060ca9f8b77e1 (patch)
tree4ffc4e978b975cc10005ef0623965812dd8b0e81 /apt-pkg/depcache.cc
parentc5c5d10d1b2ac0a589102315840c4f2a075b18c1 (diff)
depcache: Allow changing multi-arch versions for removed siblings
Do not prevent us from changing the version of a foreign package because a sibling that is being removed has a different candidate.
Diffstat (limited to 'apt-pkg/depcache.cc')
-rw-r--r--apt-pkg/depcache.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/apt-pkg/depcache.cc b/apt-pkg/depcache.cc
index f7f508f85..09d7a93bc 100644
--- a/apt-pkg/depcache.cc
+++ b/apt-pkg/depcache.cc
@@ -1853,6 +1853,10 @@ bool pkgDepCache::IsInstallOkMultiArchSameVersionSynced(PkgIterator const &Pkg,
if (CV.Downloadable() == false)
continue;
+ // Ignore siblings marked for deletion
+ if (PkgState[P->ID].Delete())
+ continue;
+
PkgState[Pkg->ID].iFlags |= AutoKept;
if (unlikely(DebugMarker == true))
std::clog << OutputInDepth(Depth) << "Ignore MarkInstall of " << APT::PrettyPkg(this, Pkg)