diff options
| author | Julian Andres Klode <jak@debian.org> | 2023-05-02 11:59:46 +0000 |
|---|---|---|
| committer | Julian Andres Klode <jak@debian.org> | 2023-05-02 11:59:46 +0000 |
| commit | 64a449186387cea2cf8ebed4f7890995b48300a7 (patch) | |
| tree | 309335c57752e3b37c69751ae9e3f57eb4f2baf5 /apt-pkg | |
| parent | aa8c9aad81b57da96e8ac7345d0024ee526c7714 (diff) | |
| parent | 5f9552801139e6ea8d84db20692561b79cda6d00 (diff) | |
Merge branch 'or-group-removal' into 'main'
fix (pkgProblemResolver): Keep "or group" when installing package to satisfy it
See merge request apt-team/apt!292
Diffstat (limited to 'apt-pkg')
| -rw-r--r-- | apt-pkg/algorithms.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/apt-pkg/algorithms.cc b/apt-pkg/algorithms.cc index 26d8c71c2..272917b08 100644 --- a/apt-pkg/algorithms.cc +++ b/apt-pkg/algorithms.cc @@ -1056,9 +1056,12 @@ bool pkgProblemResolver::ResolveInternal(bool const BrokenFix) clog << " Try Installing " << APT::PrettyPkg(&Cache, Start.TargetPkg()) << " before changing " << I.FullName(false) << std::endl; auto const OldBroken = Cache.BrokenCount(); Cache.MarkInstall(Start.TargetPkg(), true, 1, false); + OrOp = OrKeep; // FIXME: we should undo the complete MarkInstall process here - if (Cache[Start.TargetPkg()].InstBroken() == true || Cache.BrokenCount() > OldBroken) + if (Cache[Start.TargetPkg()].InstBroken() == true || Cache.BrokenCount() > OldBroken) { Cache.MarkDelete(Start.TargetPkg(), false, 1, false); + OrOp = OrRemove; + } } } } |
