diff options
-rw-r--r-- | apt-pkg/edsp.cc | 6 | ||||
-rw-r--r-- | debian/changelog | 3 |
2 files changed, 7 insertions, 2 deletions
diff --git a/apt-pkg/edsp.cc b/apt-pkg/edsp.cc index adb8788b3..6ce9da784 100644 --- a/apt-pkg/edsp.cc +++ b/apt-pkg/edsp.cc @@ -214,9 +214,11 @@ bool EDSP::WriteRequest(pkgDepCache &Cache, FILE* output, bool const Upgrade, if (Progress != NULL && p % 100 == 0) Progress->Progress(p); string* req; - if (Cache[Pkg].Delete() == true) + pkgDepCache::StateCache &P = Cache[Pkg]; + if (P.Delete() == true) req = &del; - else if (Cache[Pkg].NewInstall() == true || Cache[Pkg].Upgrade() == true) + else if (P.NewInstall() == true || P.Upgrade() == true || P.ReInstall() == true || + (P.Mode == pkgDepCache::ModeKeep && (P.iFlags & pkgDepCache::Protected) == pkgDepCache::Protected)) req = &inst; else continue; diff --git a/debian/changelog b/debian/changelog index c1936a865..545791f34 100644 --- a/debian/changelog +++ b/debian/changelog @@ -19,6 +19,9 @@ apt (0.9.7.6) UNRELEASED; urgency=low APT::Cache::ShowVersion is true (default: false) as discussed in #218995 to help debian-cd fixing #687949. Thanks to Sam Lidder for initial patch and Steve McIntyre for nagging and testing! + * apt-pkg/edsp.cc: + - include reinstall requests and already installed (= protected) packages + in the install-request for external resolvers (Closes: #689331) -- David Kalnischkies <kalnischkies@gmail.com> Wed, 19 Sep 2012 11:29:56 +0200 |