From 5d195a7129bb90cca5bebef6fd4bf78655831080 Mon Sep 17 00:00:00 2001 From: Michael Schroeder Date: Fri, 16 Oct 2009 14:31:30 +0200 Subject: [PATCH] - fix removedisabledconflicts so that it can cope with dropped orphans --- src/solver.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/solver.c b/src/solver.c index 34f0b4c..ded4b33 100644 --- a/src/solver.c +++ b/src/solver.c @@ -2084,10 +2084,15 @@ removedisabledconflicts(Solver *solv, Queue *removed) { p = solv->decisionq.elements[i]; if (p > 0) - continue; - /* a conflict. we never do conflicts on free decisions, so there - * must have been an unit rule */ + continue; /* conflicts only, please */ why = solv->decisionq_why.elements[i]; + if (why == 0) + { + /* no rule involved, must be a orphan package drop */ + continue; + } + /* we never do conflicts on free decisions, so there + * must have been an unit rule */ assert(why > 0); r = solv->rules + why; if (r->d < 0 && decisionmap[-p]) -- 2.7.4