summaryrefslogtreecommitdiff
path: root/apt-pkg/orderlist.cc
diff options
context:
space:
mode:
authorMichael Vogt <michael.vogt@ubuntu.com>2011-06-28 15:45:59 +0100
committerMichael Vogt <michael.vogt@ubuntu.com>2011-06-28 15:45:59 +0100
commit15657fcc72462aed8e5b361fe52450484229ec5d (patch)
tree25d164875b9ab5d9e2a2c5b6a19d2369fb39accf /apt-pkg/orderlist.cc
parent0db864630c16afb3ed70370f2ccac3f59475699d (diff)
cherry pick from donkult
Diffstat (limited to 'apt-pkg/orderlist.cc')
-rw-r--r--apt-pkg/orderlist.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/apt-pkg/orderlist.cc b/apt-pkg/orderlist.cc
index ba43bc757..19661fc2d 100644
--- a/apt-pkg/orderlist.cc
+++ b/apt-pkg/orderlist.cc
@@ -1073,6 +1073,12 @@ bool pkgOrderList::CheckDep(DepIterator D)
just needs one */
if (D.IsNegative() == false)
{
+ // ignore provides by older versions of this package
+ if (((D.Reverse() == false && Pkg == D.ParentPkg()) ||
+ (D.Reverse() == true && Pkg == D.TargetPkg())) &&
+ Cache[Pkg].InstallVer != *I)
+ continue;
+
/* Try to find something that does not have the after flag set
if at all possible */
if (IsFlag(Pkg,After) == true)