From 4cc152f93acf2eaf3ae66424cd4aaf47cad14a7b Mon Sep 17 00:00:00 2001 From: Michael Vogt Date: Tue, 19 Dec 2006 20:44:54 +0100 Subject: * apt-pkg/algorithms.cc: - when encountering a or-group in pkgProblemResolver::Resolver(), check if it IsCritical(), otherwise we may do checking on weak-depends and confuse the system badly --- apt-pkg/algorithms.cc | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'apt-pkg/algorithms.cc') diff --git a/apt-pkg/algorithms.cc b/apt-pkg/algorithms.cc index 0d486d102..e1b9406e2 100644 --- a/apt-pkg/algorithms.cc +++ b/apt-pkg/algorithms.cc @@ -841,7 +841,12 @@ bool pkgProblemResolver::Resolve(bool BrokenFix) OldEnd = LEnd; } else + { Start++; + // We only worry about critical deps. + if (Start.IsCritical() != true) + continue; + } // Dep is ok if ((Cache[End] & pkgDepCache::DepGInstall) == pkgDepCache::DepGInstall) -- cgit v1.2.3-70-g09d2 From 020daa7b026cf1496959ccc9d062d95cb5f8ec02 Mon Sep 17 00:00:00 2001 From: Michael Vogt Date: Wed, 20 Dec 2006 10:58:57 +0100 Subject: * apt-pkg/algorithms.cc: - make sure we have a candidateVer if we check it for downloadability --- apt-pkg/algorithms.cc | 2 +- po/apt-all.pot | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'apt-pkg/algorithms.cc') diff --git a/apt-pkg/algorithms.cc b/apt-pkg/algorithms.cc index e1b9406e2..5fa16e66f 100644 --- a/apt-pkg/algorithms.cc +++ b/apt-pkg/algorithms.cc @@ -497,7 +497,7 @@ void pkgProblemResolver::MakeScores() on the same level. We enhance the score of installed packages if those are not obsolete */ - if (I->CurrentVer != 0 && Cache[I].CandidateVerIter(Cache).Downloadable()) + if (I->CurrentVer != 0 && Cache[I].CandidateVer != 0 && Cache[I].CandidateVerIter(Cache).Downloadable()) Score += 1; } diff --git a/po/apt-all.pot b/po/apt-all.pot index 0ac6df6c1..d2dbcb7a0 100644 --- a/po/apt-all.pot +++ b/po/apt-all.pot @@ -2191,13 +2191,13 @@ msgid "" "The package %s needs to be reinstalled, but I can't find an archive for it." msgstr "" -#: apt-pkg/algorithms.cc:1061 +#: apt-pkg/algorithms.cc:1066 msgid "" "Error, pkgProblemResolver::Resolve generated breaks, this may be caused by " "held packages." msgstr "" -#: apt-pkg/algorithms.cc:1063 +#: apt-pkg/algorithms.cc:1068 msgid "Unable to correct problems, you have held broken packages." msgstr "" -- cgit v1.2.3-70-g09d2