X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Frules.c;h=b86ad778c23f42fb79459e68cf6c01295ca85f21;hb=67ba071573efb19964719240734e2f16d27a6bab;hp=3ba5a0e88f57d2680742f64a469f1ec384e83dc4;hpb=14c1dfbd0d9c3184178e5e1de3aa3f8d2e29f42f;p=platform%2Fupstream%2Flibsolv.git diff --git a/src/rules.c b/src/rules.c index 3ba5a0e..b86ad77 100644 --- a/src/rules.c +++ b/src/rules.c @@ -1246,6 +1246,13 @@ solver_addupdaterule(Solver *solv, Solvable *s, int allow_all) } #endif + if (!allow_all && !p && solv->dupmap_all) + { + queue_push(&solv->orphaned, s - pool->solvables); /* an orphaned package */ + if (solv->keep_orphans) + p = s - pool->solvables; + } + if (!allow_all && qs.count && solv->multiversion.size) { int i, j; @@ -1286,7 +1293,7 @@ solver_addupdaterule(Solver *solv, Solvable *s, int allow_all) } if (j == 0 && p == -SYSTEMSOLVABLE && solv->dupmap_all) { - queue_push(&solv->orphaned, s - pool->solvables); /* treat as orphaned */ + queue_push(&solv->orphaned, s - pool->solvables); /* also treat as orphaned */ j = qs.count; } qs.count = j;