]> git.saurik.com Git - apt.git/commitdiff
Changed check in the SmartUnpack method, reverted change in the DepAdd method.
authorChristopher Baines <cbaines8@gmail.com>
Tue, 5 Jul 2011 12:04:30 +0000 (13:04 +0100)
committerChristopher Baines <cbaines8@gmail.com>
Tue, 5 Jul 2011 12:04:30 +0000 (13:04 +0100)
apt-pkg/packagemanager.cc

index f0ad74ca81993d40eff78bfaac47b5d9a48f127e..ac11b5d5153f6304459a2a10d9cb066a9d41128c 100644 (file)
@@ -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);
            }
         }