]> git.saurik.com Git - apt.git/commitdiff
* apt-pkg/depcache.cc:
authorDavid Kalnischkies <kalnischkies@gmail.com>
Fri, 28 May 2010 17:04:53 +0000 (19:04 +0200)
committerDavid Kalnischkies <kalnischkies@gmail.com>
Fri, 28 May 2010 17:04:53 +0000 (19:04 +0200)
  - do the autoremove mark process also for required packages to handle
    these illegally depending on lower priority packages (Closes: #583517)

apt-pkg/depcache.cc
debian/changelog

index bdb89b5ce19c41fe834eaf2301a128f599945042..c29114a6517d5d36a1591af4c7329aa94438d73f 100644 (file)
@@ -1638,8 +1638,11 @@ bool pkgDepCache::MarkRequired(InRootSetFunc &userFunc)
    {
       if(!(PkgState[p->ID].Flags & Flag::Auto) ||
          (p->Flags & Flag::Essential) ||
-         userFunc.InRootSet(p))
-          
+         userFunc.InRootSet(p) ||
+         // be nice even then a required package violates the policy (#583517)
+         // and do the full mark process also for required packages
+         (p.CurrentVer().end() != true &&
+          p.CurrentVer()->Priority == pkgCache::State::Required))
       {
         // the package is installed (and set to keep)
         if(PkgState[p->ID].Keep() && !p.CurrentVer().end())
index 028452751eaf550bf295a8bd0b7eaf730c60c38f..ce7ff48b7109d1f4b6a8b5a0a905067734f54b9c 100644 (file)
@@ -6,8 +6,11 @@ apt (0.7.26~exp6) UNRELEASED; urgency=low
     - forward manual-installed bit on package disappearance
   * apt-pkg/deb/debsystem.cc:
     - add better config item for extended_states file
+  * apt-pkg/depcache.cc:
+    - do the autoremove mark process also for required packages to handle
+      these illegally depending on lower priority packages (Closes: #583517)
 
- -- David Kalnischkies <kalnischkies@gmail.com>  Thu, 27 May 2010 17:34:51 +0200
+ -- David Kalnischkies <kalnischkies@gmail.com>  Fri, 28 May 2010 19:03:30 +0200
 
 apt (0.7.26~exp5) experimental; urgency=low