diff options
| -rw-r--r-- | apt-pkg/cachefilter-patterns.h | 7 | ||||
| -rw-r--r-- | apt-pkg/solver3.cc | 11 |
2 files changed, 7 insertions, 11 deletions
diff --git a/apt-pkg/cachefilter-patterns.h b/apt-pkg/cachefilter-patterns.h index 07b7ac61b..8d8a62a9f 100644 --- a/apt-pkg/cachefilter-patterns.h +++ b/apt-pkg/cachefilter-patterns.h @@ -249,11 +249,8 @@ struct APT_HIDDEN PackageIsObsolete : public PackageMatcher // if so return false for (auto ver = pkg.VersionList(); !ver.end(); ver++) { - for (auto file = ver.FileList(); !file.end(); file++) - { - if ((file.File()->Flags & pkgCache::Flag::NotSource) == 0) - return false; - } + if (ver.Downloadable()) + return false; } return true; diff --git a/apt-pkg/solver3.cc b/apt-pkg/solver3.cc index 7117296ab..c1a1098b5 100644 --- a/apt-pkg/solver3.cc +++ b/apt-pkg/solver3.cc @@ -336,12 +336,11 @@ bool APT::Solver::Obsolete(pkgCache::PkgIterator pkg) const if (ObsoletedByNewerSourceVersion(ver)) return true; - for (auto file = ver.FileList(); !file.end(); file++) - if ((file.File()->Flags & pkgCache::Flag::NotSource) == 0) - { - pkgObsolete[pkg] = 1; - return false; - } + if (ver.Downloadable()) + { + pkgObsolete[pkg] = 1; + return false; + } if (debug >= 3) std::cerr << "Obsolete: " << ver.ParentPkg().FullName() << "=" << ver.VerStr() << " - not installable\n"; pkgObsolete[pkg] = 2; |
