}
void
-addchoicerules(Solver *solv)
+solver_addchoicerules(Solver *solv)
{
Pool *pool = solv->pool;
Map m, mneg;
SolverRuleinfo solver_ruleinfo(struct _Solver *solv, Id rid, Id *fromp, Id *top, Id *depp);
/* misc functions */
+void solver_addchoicerules(struct _Solver *solv);
void solver_disablechoicerules(struct _Solver *solv, Rule *r);
#ifdef __cplusplus
break;
case SOLVER_DISTUPGRADE:
if (select == SOLVER_SOLVABLE_ALL)
- solv->dupmap_all = 1;
+ {
+ solv->dupmap_all = 1;
+ solv->updatemap_all = 1;
+ }
if (!solv->dupmap_all)
hasdupjob = 1;
break;
solv->duprules = solv->duprules_end = solv->nrules;
if (1)
- {
- extern void addchoicerules(Solver *solv);
- addchoicerules(solv);
- }
+ solver_addchoicerules(solv);
else
solv->choicerules = solv->choicerules_end = solv->nrules;
/* policy, replace p with rp */
s = pool->solvables + p;
sd = rp ? pool->solvables + rp : 0;
- if (s == sd && solv->dupmap_all)
- {
- POOL_DEBUG(SAT_DEBUG_RESULT, " - keep obsolete %s\n", solvable2str(pool, s));
- }
- else if (sd)
+ if (sd)
{
int gotone = 0;
if (!solv->allowdowngrade && evrcmp(pool, s->evr, sd->evr, EVRCMP_MATCH_RELEASE) > 0)
{
POOL_DEBUG(SAT_DEBUG_RESULT, " - allow deinstallation of %s\n", solvable2str(pool, s));
}
-
}
}
}