summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPanu Matilainen <pmatilai@redhat.com>2010-04-15 10:24:03 +0300
committerPanu Matilainen <pmatilai@redhat.com>2010-04-21 11:53:19 +0300
commitda6e66a9b28f21f81a5e9ce1ce760e26e2a5bdd9 (patch)
tree677b7beafa42117b242c227df2cab9a52d5726b7
parenta0ed26b894e301d479c8092c9c7fa16f2d6c3c2c (diff)
downloadrpm-da6e66a9b28f21f81a5e9ce1ce760e26e2a5bdd9.tar.gz
rpm-da6e66a9b28f21f81a5e9ce1ce760e26e2a5bdd9.tar.bz2
rpm-da6e66a9b28f21f81a5e9ce1ce760e26e2a5bdd9.zip
Only check the type of dependency requested in checkInstDeps()
- This gets called separately for requires, conflicts and obsoletes, wth should it loop over conflicts when looking for requires?
-rw-r--r--lib/depends.c12
1 files changed, 3 insertions, 9 deletions
diff --git a/lib/depends.c b/lib/depends.c
index 35b11dec1..f0e85fbc7 100644
--- a/lib/depends.c
+++ b/lib/depends.c
@@ -487,17 +487,11 @@ static void checkInstDeps(rpmts ts, depCache dcache, rpmte te,
while ((h = rpmdbNextIterator(mi)) != NULL) {
char * pkgNEVRA = headerGetAsString(h, RPMTAG_NEVRA);
- rpmds requires = rpmdsNew(h, RPMTAG_REQUIRENAME, 0);
- rpmds conflicts = rpmdsNew(h, RPMTAG_CONFLICTNAME, 0);
- rpmds obsoletes = rpmdsNew(h, RPMTAG_OBSOLETENAME, 0);
+ rpmds ds = rpmdsNew(h, depTag, 0);
- checkDS(ts, dcache, te, pkgNEVRA, requires, dep, 0);
- checkDS(ts, dcache, te, pkgNEVRA, conflicts, dep, 0);
- checkDS(ts, dcache, te, pkgNEVRA, obsoletes, dep, 0);
+ checkDS(ts, dcache, te, pkgNEVRA, ds, dep, 0);
- conflicts = rpmdsFree(conflicts);
- requires = rpmdsFree(requires);
- obsoletes = rpmdsFree(requires);
+ ds = rpmdsFree(ds);
pkgNEVRA = _free(pkgNEVRA);
}
rpmdbFreeIterator(mi);