From: Stefan Schubert Date: Fri, 15 Feb 2008 17:02:32 +0000 (+0000) Subject: move check of installed items to distupgrade X-Git-Tag: 6.6.0~1388 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=cbad3ec2b9bb82c176181b9453deb9bf083b9d4e;p=platform%2Fupstream%2Flibzypp.git move check of installed items to distupgrade --- diff --git a/zypp/sat/SATResolver.cc b/zypp/sat/SATResolver.cc index 74d057c79..ed45b962a 100644 --- a/zypp/sat/SATResolver.cc +++ b/zypp/sat/SATResolver.cc @@ -229,18 +229,15 @@ SATSolutionToPool (PoolItem item, const ResStatus & status, const ResStatus::Tra //---------------------------------------------------------------------------- -// helper functions for distupgrade +// helper functions for distupgrade and installation order //---------------------------------------------------------------------------- PoolItemList SATResolver::whoProvides(Capability cap) { PoolItemList itemList; Id p, *pp; - Repo *installedRepo = sat::Pool::instance().systemRepo().get(); for (pp = pool_whatprovides(_SATPool, cap.id()) ; (p = *pp++) != 0; ) { - Solvable *solvable = _SATPool->solvables + p; PoolItem item = _pool.find (sat::Solvable(p)); - if (item && - (!installedRepo || solvable->repo != installedRepo) ) { + if (item) { itemList.push_back (item); MIL << item << " provides " << cap << endl; } diff --git a/zypp/solver/detail/ResolverUpgrade.cc b/zypp/solver/detail/ResolverUpgrade.cc index 82833d052..04b0b7a9f 100644 --- a/zypp/solver/detail/ResolverUpgrade.cc +++ b/zypp/solver/detail/ResolverUpgrade.cc @@ -446,7 +446,9 @@ Resolver::doUpgrade( UpgradeStatistics & opt_stats_r ) otherVendorFound = true; } else if ( provider.status().isToBeUninstalled() ) { MIL << " IGNORE relation match (package is tagged to delete): " << provider << endl; - } + } else if ( provider.status().isInstalled() ) { + MIL << " IGNORE relation match (package is tagged to delete): " << provider << endl; + } else { FindMap::iterator it = providersMap.find( provider->name() );