ref: refs/heads/master
commit 021f7746e07b870a4f51fe4d6c4ca00b01e1c236
Author: Michael Schroeder
Date: Thu Jul 23 11:10:25 2009 +0200
- work around obsoleteusescolor problem by making infarch rules weak
- change debug output
---
examples/solv.c | 4 ----
src/solver.c | 11 ++++++++++-
src/solverdebug.c | 16 ++++++++--------
3 files changed, 18 insertions(+), 13 deletions(-)
diff --git a/examples/solv.c b/examples/solv.c
index f64e0b0..5f93a00 100644
--- a/examples/solv.c
+++ b/examples/solv.c
@@ -1351,7 +1351,6 @@ read_repos(Pool *pool, struct repoinfo *repoinfos, int nrepoinfos)
cinfo->repo = 0;
break;
}
-printf("cinfo: %p\n", cinfo);
calc_checksum_fp(fp, REPOKEY_TYPE_SHA256, cinfo->cookie);
if (usecachedrepo(repo, 0, cinfo->cookie, 1))
{
@@ -2278,9 +2277,6 @@ rerunsolver:
solv->allowarchchange = 1;
solv->allowvendorchange = 1;
}
- /* infarch check currently doesn't work with colors */
- solv->noinfarchcheck = pool->obsoleteusescolors;
-
// queue_push2(&job, SOLVER_DISTUPGRADE, 3);
solver_solve(solv, &job);
if (!solv->problems.count)
diff --git a/src/solver.c b/src/solver.c
index be10f0b..c45d676 100644
--- a/src/solver.c
+++ b/src/solver.c
@@ -2783,7 +2783,16 @@ solver_solve(Solver *solv, Queue *job)
/* now create infarch and dup rules */
if (!solv->noinfarchcheck)
- solver_addinfarchrules(solv, &addedmap);
+ {
+ solver_addinfarchrules(solv, &addedmap);
+ if (pool->obsoleteusescolors)
+ {
+ /* currently doesn't work well with infarch rules, so make
+ * them weak */
+ for (i = solv->infarchrules; i < solv->infarchrules_end; i++)
+ queue_push(&solv->weakruleq, i);
+ }
+ }
else
solv->infarchrules = solv->infarchrules_end = solv->nrules;
diff --git a/src/solverdebug.c b/src/solverdebug.c
index 4776e32..d95416a 100644
--- a/src/solverdebug.c
+++ b/src/solverdebug.c
@@ -424,28 +424,28 @@ solver_printtransaction(Solver *solv)
switch(class)
{
case SOLVER_TRANSACTION_ERASE:
- POOL_DEBUG(SAT_DEBUG_RESULT, "erased packages (%d):\n", cnt);
+ POOL_DEBUG(SAT_DEBUG_RESULT, "%d erased packages:\n", cnt);
break;
case SOLVER_TRANSACTION_INSTALL:
- POOL_DEBUG(SAT_DEBUG_RESULT, "installed packages (%d):\n", cnt);
+ POOL_DEBUG(SAT_DEBUG_RESULT, "%d installed packages:\n", cnt);
break;
case SOLVER_TRANSACTION_REINSTALLED:
- POOL_DEBUG(SAT_DEBUG_RESULT, "reinstalled packages (%d):\n", cnt);
+ POOL_DEBUG(SAT_DEBUG_RESULT, "%d reinstalled packages:\n", cnt);
break;
case SOLVER_TRANSACTION_DOWNGRADED:
- POOL_DEBUG(SAT_DEBUG_RESULT, "downgraded packages (%d):\n", cnt);
+ POOL_DEBUG(SAT_DEBUG_RESULT, "%d downgraded packages:\n", cnt);
break;
case SOLVER_TRANSACTION_CHANGED:
- POOL_DEBUG(SAT_DEBUG_RESULT, "changed packages (%d):\n", cnt);
+ POOL_DEBUG(SAT_DEBUG_RESULT, "%d changed packages:\n", cnt);
break;
case SOLVER_TRANSACTION_UPGRADED:
- POOL_DEBUG(SAT_DEBUG_RESULT, "upgraded packages (%d):\n", cnt);
+ POOL_DEBUG(SAT_DEBUG_RESULT, "%d upgraded packages:\n", cnt);
break;
case SOLVER_TRANSACTION_VENDORCHANGE:
- POOL_DEBUG(SAT_DEBUG_RESULT, "vendor change from '%s' to '%s' (%d):\n", id2strnone(pool, classes.elements[i + 2]), id2strnone(pool, classes.elements[i + 3]), cnt);
+ POOL_DEBUG(SAT_DEBUG_RESULT, "%d vendor changes from '%s' to '%s':\n", cnt, id2strnone(pool, classes.elements[i + 2]), id2strnone(pool, classes.elements[i + 3]));
break;
case SOLVER_TRANSACTION_ARCHCHANGE:
- POOL_DEBUG(SAT_DEBUG_RESULT, "arch change from %s to %s (%d):\n", id2str(pool, classes.elements[i + 2]), id2str(pool, classes.elements[i + 3]), cnt);
+ POOL_DEBUG(SAT_DEBUG_RESULT, "%d arch changes from %s to %s:\n", cnt, id2str(pool, classes.elements[i + 2]), id2str(pool, classes.elements[i + 3]));
break;
default:
class = SOLVER_TRANSACTION_IGNORE;
--
To unsubscribe, e-mail: zypp-commit+unsubscribe@opensuse.org
For additional commands, e-mail: zypp-commit+help@opensuse.org