summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/psm.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/psm.c b/lib/psm.c
index 8f5376d49..c786f1e37 100644
--- a/lib/psm.c
+++ b/lib/psm.c
@@ -680,13 +680,14 @@ void rpmpsmNotify(rpmpsm psm, int what, rpm_loff_t amount)
*/
static void markReplacedInstance(rpmts ts, rpmte te)
{
+ /* this must match rpmNameVersionCompare in depends.c */
rpmdbMatchIterator mi = rpmtsInitIterator(ts, RPMDBI_NAME, rpmteN(te), 0);
rpmdbSetIteratorRE(mi, RPMTAG_EPOCH, RPMMIRE_STRCMP, rpmteE(te));
rpmdbSetIteratorRE(mi, RPMTAG_VERSION, RPMMIRE_STRCMP, rpmteV(te));
rpmdbSetIteratorRE(mi, RPMTAG_RELEASE, RPMMIRE_STRCMP, rpmteR(te));
+ rpmdbSetIteratorRE(mi, RPMTAG_ARCH, RPMMIRE_STRCMP, rpmteA(te));
/* XXX shouldn't we also do this on colorless transactions? */
if (rpmtsColor(ts)) {
- rpmdbSetIteratorRE(mi, RPMTAG_ARCH, RPMMIRE_STRCMP, rpmteA(te));
rpmdbSetIteratorRE(mi, RPMTAG_OS, RPMMIRE_STRCMP, rpmteO(te));
}