summaryrefslogtreecommitdiff
path: root/apt-pkg/packagemanager.cc
diff options
context:
space:
mode:
authorChristopher Baines <cbaines8@gmail.com>2011-07-05 13:04:30 +0100
committerChristopher Baines <cbaines8@gmail.com>2011-07-05 13:04:30 +0100
commit55c04aa4c9f9704137822fac3a8392280667dfb6 (patch)
tree938daaddee7bb431a6f9ab8e528c39db9746cb4f /apt-pkg/packagemanager.cc
parent4e9ccfb2ff599b7a65ecec3c2f1383636f068f0c (diff)
Changed check in the SmartUnpack method, reverted change in the DepAdd method.
Diffstat (limited to 'apt-pkg/packagemanager.cc')
-rw-r--r--apt-pkg/packagemanager.cc7
1 files changed, 4 insertions, 3 deletions
diff --git a/apt-pkg/packagemanager.cc b/apt-pkg/packagemanager.cc
index f0ad74ca8..ac11b5d51 100644
--- a/apt-pkg/packagemanager.cc
+++ b/apt-pkg/packagemanager.cc
@@ -469,7 +469,7 @@ bool pkgPackageManager::DepAdd(pkgOrderList &OList,PkgIterator Pkg,int Depth)
PkgIterator Pkg = Ver.ParentPkg();
// See if the current version is ok
- if (Pkg.CurrentVer() == Ver && List->IsFlag(Pkg,pkgOrderList::Configured) == true &&
+ if (Pkg.CurrentVer() == Ver && List->IsNow(Pkg) == true &&
Pkg.State() == PkgIterator::NeedsNothing)
{
Bad = false;
@@ -685,8 +685,9 @@ bool pkgPackageManager::SmartUnPack(PkgIterator Pkg, bool const Immediate)
{
VerIterator Ver(Cache,*I);
PkgIterator Pkg = Ver.ParentPkg();
- // Found a break, so unpack the package
- if (List->IsNow(Pkg)) {
+ // Check if it needs to be unpacked
+ if (List->IsFlag(Pkg,pkgOrderList::InList) && Cache[Pkg].Delete() == false) {
+ // Found a break, so unpack the package
SmartUnPack(Pkg, false);
}
}