X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/d0c59649c2d9194ffb8432e553851322fa3f4933..d955fe80937173f6e4c609ae58a916b61137583d:/apt-pkg/algorithms.cc diff --git a/apt-pkg/algorithms.cc b/apt-pkg/algorithms.cc index e784ce895..49e964f23 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.27 1999/10/22 05:58:54 jgg Exp $ +// $Id: algorithms.cc,v 1.29 1999/11/17 01:52:01 jgg Exp $ /* ###################################################################### Algorithms - A set of misc algorithms @@ -738,7 +738,10 @@ bool pkgProblemResolver::Resolve(bool BrokenFix) if (InOr == true) { if (OldEnd == LEnd && OrOp == OrRemove) - Cache.MarkDelete(I); + { + if ((Flags[I->ID] & Protected) != Protected) + Cache.MarkDelete(I); + } if (OldEnd == LEnd && OrOp == OrKeep) Cache.MarkKeep(I); } @@ -799,7 +802,11 @@ bool pkgProblemResolver::Resolve(bool BrokenFix) if ((Flags[I->ID] & Protected) == Protected) { if (DoUpgrade(Pkg) == true) + { Scores[Pkg->ID] = Scores[I->ID]; + break; + } + continue; }