From: Dan Winship Date: Tue, 11 Mar 2008 22:08:12 +0000 (-0400) Subject: deal with a single package being the target of both a FORCED_UPDATE and an INSTALL X-Git-Tag: 0.1~195 X-Git-Url: http://project.juiblex.co.uk/git/?a=commitdiff_plain;h=3cbcf9be2190f686a4e4e0df7ea4d963f5db53a9;p=razor2.git%2F.git deal with a single package being the target of both a FORCED_UPDATE and an INSTALL --- diff --git a/razor.c b/razor.c index f33eab9..435a38b 100644 --- a/razor.c +++ b/razor.c @@ -2292,7 +2292,12 @@ add_transaction_package(struct razor_transaction_resolver *trans, if (already->new_package == new_package) { /* Already taken care of */ return; + } else if (new_package_set == trans->upstream && + already->state == RAZOR_PACKAGE_FORCED_UPDATE) { + already->new_package = new_package; + return; } + /* Oops. We lose */ if (state != RAZOR_PACKAGE_CONTRADICTION) contradiction = 1; @@ -2304,7 +2309,11 @@ add_transaction_package(struct razor_transaction_resolver *trans, if (already->old_package == old_package) { /* Already taken care of */ return; + } else if (old_package_set == trans->system) { + already->old_package = old_package; + return; } + /* Oops. We lose */ if (state != RAZOR_PACKAGE_CONTRADICTION) contradiction = 1;