]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/algorithms.cc
apt-pkg/acquire-item.cc: fix breaking on unreachable networks
[apt.git] / apt-pkg / algorithms.cc
index 6e2b9755730c11b824dde72ce199b791a5d4972b..50cb6b659e03d47cd4ced837f6473adb46eba988 100644 (file)
@@ -1107,8 +1107,7 @@ bool pkgProblemResolver::Resolve(bool BrokenFix)
       return _error->Error(_("Unable to correct problems, you have held broken packages."));
    }
    
-   // set the auto-flags (mvo: I'm not sure if we _really_ need this, but
-   // I didn't managed 
+   // set the auto-flags (mvo: I'm not sure if we _really_ need this)
    pkgCache::PkgIterator I = Cache.PkgBegin();
    for (;I.end() != true; I++) {
       if (Cache[I].NewInstall() && !(Flags[I->ID] & PreInstalled)) {
@@ -1356,7 +1355,7 @@ bool ListUpdate(pkgAcquireStatus &Stat,
    // Keep "APT::Get::List-Cleanup" name for compatibility, but
    // this is really a global option for the APT library now
    if (!TransientNetworkFailure && !Failed &&
-       (_config->FindB("APT::Get::List-Cleanup",true) == true ||
+       (_config->FindB("APT::Get::List-Cleanup",true) == true &&
        _config->FindB("APT::List-Cleanup",true) == true))
    {
       if (Fetcher.Clean(_config->FindDir("Dir::State::lists")) == false ||
@@ -1371,7 +1370,11 @@ bool ListUpdate(pkgAcquireStatus &Stat,
       return _error->Error(_("Some index files failed to download, they have been ignored, or old ones used instead."));
 
 
-   // Run the scripts if all was fine
+   // Run the success scripts if all was fine
+   if(!TransientNetworkFailure && !Failed)
+      RunScripts("APT::Update::Post-Invoke-Success");
+
+   // Run the other scripts
    RunScripts("APT::Update::Post-Invoke");
    return true;
 }