]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/depcache.cc
add options to disable specific checksums for Indexes
[apt.git] / apt-pkg / depcache.cc
index 7c09d3a38fe4b6965feac4fa194aa43fa5e998cb..ddbd3769905bd69931b1e177a2f62a8e2617c1df 100644 (file)
@@ -1257,9 +1257,10 @@ void pkgDepCache::MarkInstall(PkgIterator const &Pkg,bool AutoInst,
 
    if(FromUser)
      {
 
    if(FromUser)
      {
-       // Set it to manual if it's a new install or cancelling the
-       // removal of a garbage package.
-       if(P.Status == 2 || (!Pkg.CurrentVer().end() && !P.Marked))
+       // Set it to manual if it's a new install or already installed,
+       // but only if its not marked by the autoremover (aptitude depend on this behavior)
+       // or if we do automatic installation (aptitude never does it)
+       if(P.Status == 2 || (Pkg->CurrentVer != 0 && (AutoInst == true || P.Marked == false)))
         P.Flags &= ~Flag::Auto;
      }
    else
         P.Flags &= ~Flag::Auto;
      }
    else