]> git.ipfire.org Git - thirdparty/libsolv.git/commitdiff
Ignore constrains conflicting with itself, tweak constrains problem message
authorMichael Schroeder <mls@suse.de>
Fri, 15 Nov 2019 10:57:02 +0000 (11:57 +0100)
committerMichael Schroeder <mls@suse.de>
Fri, 15 Nov 2019 10:57:02 +0000 (11:57 +0100)
src/problems.c
src/rules.c

index bcce038d45c96cfbf9cc8edba864265488301fe4..63165f3a1f71285b4e0fb930455c027f402df905 100644 (file)
@@ -1343,7 +1343,7 @@ solver_problemruleinfo2str(Solver *solv, SolverRuleinfo type, Id source, Id targ
       return pool_tmpjoin(pool, "package ", pool_solvid2str(pool, source), " can only be installed by a direct request");
     case SOLVER_RULE_PKG_CONSTRAINS:
       s = pool_tmpjoin(pool, "package ", pool_solvid2str(pool, source), 0);
-      s = pool_tmpappend(pool, s, " has constraint ", pool_dep2str(pool, dep));
+      s = pool_tmpappend(pool, s, " has constraint ", pool_dep2str(pool, dep));
       return pool_tmpappend(pool, s, " conflicting with ", pool_solvid2str(pool, target));
     default:
       return "bad problem rule type";
index dc4b4137c158ade8bd9241995763a3f0c3a14228..1396a6cddbedf8d1f7a08da09f070900dd5cf79b 100644 (file)
@@ -679,6 +679,8 @@ add_conda_constrains_rule(Solver *solv, Id n, Id dep)
   FOR_PROVIDES(p, pp, rd->name)
     {
       Id p2;
+      if (p == n)
+       continue;
       while ((p2 = pool->whatprovidesdata[pdep]) != 0 && p2 < p)
        pdep++;
       if (p == p2)