X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fpolicy.c;h=7ed52d98fd96d3ed0616072b3ed567e45e8ce6d9;hb=8fcc0d8e03716077d1f2c2ca79fc622880a32196;hp=3a0a73760026ef00e602b0765e4641c9b774f623;hpb=bc8d0a48b41d6cc4d79f1c062dda7ed230841644;p=platform%2Fupstream%2Flibsolv.git diff --git a/src/policy.c b/src/policy.c index 3a0a737..7ed52d9 100644 --- a/src/policy.c +++ b/src/policy.c @@ -1231,8 +1231,15 @@ urpm_reorder(Solver *solv, Queue *plist) if (knid) { FOR_PROVIDES(p, pp, knid) - if (solv->decisionmap[p] > 0 || (pool->installed && pool->solvables[p].repo == pool->installed)) - score = 3; + { + if (solv->decisionmap[p] > 0) + { + score = 4; + break; + } + else if (pool->installed && pool->solvables[p].repo == pool->installed) + score = 3; + } } } } @@ -1257,8 +1264,15 @@ urpm_reorder(Solver *solv, Queue *plist) if (knid) { FOR_PROVIDES(p, pp, knid) - if (solv->decisionmap[p] > 0 || (pool->installed && pool->solvables[p].repo == pool->installed)) - score = 3; + { + if (solv->decisionmap[p] > 0) + { + score = 4; + break; + } + if (pool->installed && pool->solvables[p].repo == pool->installed) + score = 3; + } } } } @@ -1284,8 +1298,15 @@ urpm_reorder(Solver *solv, Queue *plist) { score = 0; FOR_PROVIDES(p, pp, id) - if (solv->decisionmap[p] > 0 || (pool->installed && pool->solvables[p].repo == pool->installed)) - score = 3; + { + if (solv->decisionmap[p] > 0) + { + score = 4; + break; + } + if (pool->installed && pool->solvables[p].repo == pool->installed) + score = 3; + } break; } }