diff options
Diffstat (limited to 'apt-pkg')
-rw-r--r-- | apt-pkg/algorithms.cc | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/apt-pkg/algorithms.cc b/apt-pkg/algorithms.cc index 505ba59f7..60da32d78 100644 --- a/apt-pkg/algorithms.cc +++ b/apt-pkg/algorithms.cc @@ -1,6 +1,6 @@ // -*- mode: cpp; mode: fold -*- // Description /*{{{*/ -// $Id: algorithms.cc,v 1.18 1999/06/04 02:31:37 jgg Exp $ +// $Id: algorithms.cc,v 1.19 1999/06/28 03:11:24 jgg Exp $ /* ###################################################################### Algorithms - A set of misc algorithms @@ -755,10 +755,16 @@ bool pkgProblemResolver::Resolve(bool BrokenFix) ((Cache[End] & pkgDepCache::DepGNow) == 0 && End->Type != pkgCache::Dep::Conflicts)) { + // Try a little harder to fix protected packages.. if ((Flags[I->ID] & Protected) == Protected) + { + if (DoUpgrade(Pkg) == true) + Scores[Pkg->ID] = Scores[I->ID]; continue; - - // See if a keep will do + } + + /* See if a keep will do, unless the package is protected, + then installing it will be necessary */ Cache.MarkKeep(I); if (Cache[I].InstBroken() == false) { |