From b2fd114deaad01295b42a601ea66074fe8028a5c Mon Sep 17 00:00:00 2001 From: Michael Schroeder Date: Tue, 14 Jun 2016 14:51:22 +0200 Subject: [PATCH 2/2] Improve last commit so that self-providing requires don't pull in other providers --- src/rules.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/rules.c b/src/rules.c index 07c293a..797916f 100644 --- a/src/rules.c +++ b/src/rules.c @@ -3870,6 +3870,8 @@ complex_cleandeps_addback(Pool *pool, Id ip, Id req, Map *im, Map *installedm, Q if (!MAPTST(installedm, -p)) break; } + else if (p == ip) + break; } if (!p) { @@ -4399,6 +4401,11 @@ solver_createcleandepsmap(Solver *solv, Map *cleandepsmap, int unneeded) } #endif FOR_PROVIDES(p, pp, req) + if (p == ip) + break; + if (p) + continue; + FOR_PROVIDES(p, pp, req) { if (MAPTST(&im, p)) continue; @@ -4430,6 +4437,11 @@ solver_createcleandepsmap(Solver *solv, Map *cleandepsmap, int unneeded) } #endif FOR_PROVIDES(p, pp, req) + if (p == ip) + break; + if (p) + continue; + FOR_PROVIDES(p, pp, req) { if (MAPTST(&im, p)) continue; -- 2.7.4