From: Michael Schroeder Date: Fri, 25 Nov 2022 14:01:39 +0000 (+0100) Subject: Fix solver_rule2solvable implementation X-Git-Tag: 0.7.23~37 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d35c45240062574ee2cd495fbab2a070d6ca2756;p=thirdparty%2Flibsolv.git Fix solver_rule2solvable implementation It should return a solvable id. --- diff --git a/src/rules.c b/src/rules.c index ec02d836..41865cb6 100644 --- a/src/rules.c +++ b/src/rules.c @@ -3210,10 +3210,10 @@ solver_rule2job(Solver *solv, Id rid, Id *whatp) Id solver_rule2solvable(Solver *solv, Id rid) { - if (rid >= solv->updaterules && rid < solv->updaterules_end) - return rid - solv->updaterules; - if (rid >= solv->featurerules && rid < solv->featurerules_end) - return rid - solv->featurerules; + if (rid >= solv->updaterules && rid < solv->updaterules_end && solv->installed) + return solv->installed->start + (rid - solv->updaterules); + if (rid >= solv->featurerules && rid < solv->featurerules_end && solv->installed) + return solv->installed->start + (rid - solv->featurerules); return 0; }