From: Michael Vogt Date: Fri, 29 Jun 2007 20:40:44 +0000 (+0200) Subject: * fixes in the auto-mark code (thanks to Daniel X-Git-Tag: 0.7.21~273^2 X-Git-Url: https://git.saurik.com/apt.git/commitdiff_plain/36baa77ad9711a98c1407990a2f04acf666d4408?hp=--cc * fixes in the auto-mark code (thanks to Daniel Burrows) --- 36baa77ad9711a98c1407990a2f04acf666d4408 diff --git a/apt-pkg/depcache.cc b/apt-pkg/depcache.cc index 50a75843f..7f5719454 100644 --- a/apt-pkg/depcache.cc +++ b/apt-pkg/depcache.cc @@ -1285,6 +1285,7 @@ void pkgDepCache::MarkPackage(const pkgCache::PkgIterator &pkg, bool follow_suggests) { pkgDepCache::StateCache &state = PkgState[pkg->ID]; + VerIterator currver = pkg.CurrentVer(); VerIterator candver = state.CandidateVerIter(*this); VerIterator instver = state.InstVerIter(*this); @@ -1305,9 +1306,11 @@ void pkgDepCache::MarkPackage(const pkgCache::PkgIterator &pkg, } #endif - // Ignore versions other than the InstVer, and ignore packages - // that are already going to be removed or just left uninstalled. - if(!(ver == instver && !instver.end())) + // For packages that are not going to be removed, ignore versions + // other than the InstVer. For packages that are going to be + // removed, ignore versions other than the current version. + if(!(ver == instver && !instver.end()) && + !(ver == currver && instver.end() && !ver.end())) return; // if we are marked already we are done diff --git a/debian/changelog b/debian/changelog index 23780b5ff..d0103f43a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,6 +2,8 @@ apt (0.7.3) unstable; urgency=low * fixed compile errors with g++ 7.3 (thanks to Daniel Burrows, closes: #429378) + * fixes in the auto-mark code (thanks to Daniel + Burrows) * fix FTFBFS by changing build-depends to libcurl4-gnutls-dev (closes: #428363) * cmdline/apt-get.cc: