X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/2fd65468b3cb25c725a709f9b470ced0ab4823a6..d556d1a1cc89e0f99d1b76fd6da72fd0174f5862:/apt-pkg/packagemanager.cc diff --git a/apt-pkg/packagemanager.cc b/apt-pkg/packagemanager.cc index 9e2eee969..126caef93 100644 --- a/apt-pkg/packagemanager.cc +++ b/apt-pkg/packagemanager.cc @@ -1,6 +1,6 @@ // -*- mode: cpp; mode: fold -*- // Description /*{{{*/ -// $Id: packagemanager.cc,v 1.16 1999/07/04 23:22:53 jgg Exp $ +// $Id: packagemanager.cc,v 1.18 1999/07/10 04:58:42 jgg Exp $ /* ###################################################################### Package Manager - Abstacts the package manager @@ -152,7 +152,9 @@ bool pkgPackageManager::CreateOrderList() // Not interesting if ((Cache[I].Keep() == true || Cache[I].InstVerIter(Cache) == I.CurrentVer()) && - I.State() == pkgCache::PkgIterator::NeedsNothing) + I.State() == pkgCache::PkgIterator::NeedsNothing && + (I.Purge() != false || Cache[I].Mode != pkgDepCache::ModeDelete || + (Cache[I].iFlags & pkgDepCache::Purge) != pkgDepCache::Purge)) continue; // Append it to the list @@ -375,7 +377,7 @@ bool pkgPackageManager::SmartRemove(PkgIterator Pkg) return true; List->Flag(Pkg,pkgOrderList::Configured,pkgOrderList::States); - return Remove(Pkg); + return Remove(Pkg,(Cache[Pkg].iFlags & pkgDepCache::Purge) == pkgDepCache::Purge); } /*}}}*/ // PM::SmartUnPack - Install helper /*{{{*/