diff --git a/test/depsolvetests.py b/test/depsolvetests.py
index 83ceebf..9589421 100644
--- a/test/depsolvetests.py
+++ b/test/depsolvetests.py
@@ -555,11 +555,7 @@ class DepsolveTests(DepsolveTests):
self.rpmdb.addPackage(xpo1)
self.assertEquals('ok', *self.resolveCode())
- # FIXME: This should be:
- # self.assertResult((po, xpo2, ipo2))
- # ...but we process the 32bit dep. first, which brings in the 64 variant
- # which, because something was added, makes us think we worked.
- self.assertResult((po, xpo2))
+ self.assertResult((po, xpo2, ipo2))
def testFakeMultilibReqsUpdate1b(self):
(po, xpo1, xpo2, ipo1, ipo2) = self._setup_FakeMultilibReqs()
diff --git a/yum/depsolve.py b/yum/depsolve.py
index 3957d68..05fa211 100644
--- a/yum/depsolve.py
+++ b/yum/depsolve.py
@@ -495,10 +495,10 @@ class Depsolve(object):
# try updating the already install pkgs
length = len(self.tsInfo)
for pkg in provSack.returnNewestByName():
- self.update(requiringPo=requiringPo, name=pkg.name, epoch=pkg.epoch, version=pkg.version, rel=pkg.rel)
- if len(self.tsInfo) != length:
- checkdeps = True
- return checkdeps, missingdep
+ for txmbr in self.update(requiringPo=requiringPo, name=pkg.name, epoch=pkg.epoch, version=pkg.version, rel=pkg.rel):
+ if pkg == txmbr.po:
+ checkdeps = True
+ return checkdeps, missingdep
# find out which arch of the ones we can choose from is closest
# to the arch of the requesting pkg
: