diff options
author | Michael Vogt <mvo@ubuntu.com> | 2014-02-04 10:18:16 +0100 |
---|---|---|
committer | Michael Vogt <mvo@ubuntu.com> | 2014-02-04 10:18:16 +0100 |
commit | 0dfc7eef47519bd6b48ceaa4341b72ec40560988 (patch) | |
tree | 9955aaa4854c7deabcbac896b90edc437ee527b6 /apt-pkg/depcache.cc | |
parent | 4afa7d18b37661996d188959ba7917824e1545d3 (diff) |
Fix multiarch package upgrade issue
When checking for negative dependencies in MarkInstall() ensure that
only dependencies that are relevant (i.e. getting installed) are
checked.
Diffstat (limited to 'apt-pkg/depcache.cc')
-rw-r--r-- | apt-pkg/depcache.cc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/apt-pkg/depcache.cc b/apt-pkg/depcache.cc index f9c891c86..a3bb4fd3d 100644 --- a/apt-pkg/depcache.cc +++ b/apt-pkg/depcache.cc @@ -1253,6 +1253,11 @@ bool pkgDepCache::MarkInstall(PkgIterator const &Pkg,bool AutoInst, if (PkgState[Pkg->ID].InstallVer == 0) continue; + /* Ignore negative dependencies that we are not going to + get installed */ + if (PkgState[Pkg->ID].InstallVer != *I) + continue; + if ((Start->Version != 0 || TrgPkg != Pkg) && PkgState[Pkg->ID].CandidateVer != PkgState[Pkg->ID].InstallVer && PkgState[Pkg->ID].CandidateVer != *I && |