File ignoreorphaned.diff of Package libsatsolver
--- ./src/solver.c.orig 2010-10-22 13:57:56.000000000 +0000
+++ ./src/solver.c 2011-02-24 16:41:45.000000000 +0000
@@ -1722,6 +1722,8 @@ solver_run_sat(Solver *solv, int disable
}
else if (solv->decisionmap[p] == 0)
{
+ if (solv->dupmap_all && solv->installed && pool->solvables[p].repo == solv->installed && (solv->droporphanedmap_all || (solv->droporphanedmap.size && MAPTST(&solv->droporphanedmap, p - solv->installed->start))))
+ continue;
queue_pushunique(&dq, p);
}
}
@@ -1737,6 +1739,8 @@ solver_run_sat(Solver *solv, int disable
continue;
if (!solver_is_supplementing(solv, s))
continue;
+ if (solv->dupmap_all && solv->installed && s->repo == solv->installed && (solv->droporphanedmap_all || (solv->droporphanedmap.size && MAPTST(&solv->droporphanedmap, i - solv->installed->start))))
+ continue;
queue_push(&dqs, i);
}
}