From: Michael Schroeder Date: Wed, 31 Oct 2007 11:54:49 +0000 (+0000) Subject: - allow downgrade for INSTALL_SOLVABLE X-Git-Tag: BASE-SuSE-Code-12_1-Branch~308^2~852 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=75b72e86e5089ba38cb8efba73bebb3170c396f1;p=thirdparty%2Flibsolv.git - allow downgrade for INSTALL_SOLVABLE - add support for "version" in deptestomatic's select_solvable() - comment to repo_content --- diff --git a/src/solver.c b/src/solver.c index cf11b791..311b3058 100644 --- a/src/solver.c +++ b/src/solver.c @@ -2816,6 +2816,9 @@ solve(Solver *solv, Queue *job) } addrule(solv, what, 0); /* install by Id */ queue_push(&solv->ruletojob, i); + FOR_PROVIDES(p, pp, what) + if (pool->solvables[what].name == pool->solvables[p].name) + MAPSET(&noupdaterule, p); break; case SOLVER_ERASE_SOLVABLE: addrule(solv, -what, 0); /* remove by Id */ diff --git a/tools/repo_content.c b/tools/repo_content.c index 3014d6f0..2b1f71f3 100644 --- a/tools/repo_content.c +++ b/tools/repo_content.c @@ -224,11 +224,12 @@ pool_addrepo_content(Pool *pool, FILE *fp) pack++; } else if (istag ("VERSION")) + /* without a release? but that's like zypp implements it */ s->evr = makeevr(pool, value); else if (istag ("DISTPRODUCT")) - ; // DISTPRODUCT is only for Yast, not for the package manager + ; /* DISTPRODUCT is only for Yast, not the package manager */ else if (istag ("DISTVERSION")) - ; // DISTVERSION is only for Yast + ; /* DISTVERSION is only for Yast, not the package manager */ else if (istag ("VENDOR")) s->vendor = str2id(pool, value, 1); else if (istag ("ARCH"))