diff options
author | Michael Schroeder <mls@suse.de> | 2009-06-04 18:53:43 +0200 |
---|---|---|
committer | Michael Schroeder <mls@suse.de> | 2009-06-04 18:53:43 +0200 |
commit | 693f01803f478539aff7bd3d6cc29be8bc681a6b (patch) | |
tree | 7d501b22792fb9ae8aad1becf1b1a4570aae00b4 /src/problems.c | |
parent | bef8a9bbc1f1c82577faab89e6bdc6ad35a3a0e9 (diff) | |
download | libsolv-693f01803f478539aff7bd3d6cc29be8bc681a6b.tar.gz libsolv-693f01803f478539aff7bd3d6cc29be8bc681a6b.tar.bz2 libsolv-693f01803f478539aff7bd3d6cc29be8bc681a6b.zip |
- fix bugs in problem handling
Diffstat (limited to 'src/problems.c')
-rw-r--r-- | src/problems.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/problems.c b/src/problems.c index f76a761..bed7303 100644 --- a/src/problems.c +++ b/src/problems.c @@ -392,7 +392,7 @@ convertsolution(Solver *solv, Id why, Queue *solutionq) break; } if (!p) - p = -solv->rules[why].p; /* XXX: what to do here? */ + return; /* false alarm */ queue_push(solutionq, SOLVER_SOLUTION_INFARCH); queue_push(solutionq, p); return; @@ -413,7 +413,7 @@ convertsolution(Solver *solv, Id why, Queue *solutionq) break; } if (!p) - p = -solv->rules[why].p; /* XXX: what to do here? */ + return; /* false alarm */ queue_push(solutionq, SOLVER_SOLUTION_DISTUPGRADE); queue_push(solutionq, p); return; @@ -565,7 +565,7 @@ create_solutions(Solver *solv, int probnr, int solidx) if (solv->solutions.count == solstart + 1) { solv->solutions.count--; - if (!essentialok && i + 1 == problem.count) + if (!essentialok && i + 1 == problem.count && !nsol) { /* nothing found, start over */ essentialok = 1; |