summaryrefslogtreecommitdiff
path: root/src/rules.c
diff options
context:
space:
mode:
authorMichael Schroeder <mls@suse.de>2013-09-23 16:34:25 +0200
committerMichael Schroeder <mls@suse.de>2013-09-23 16:34:25 +0200
commit388fa5c318586b1fec7a8b8d0b9fb35e7e5d874a (patch)
tree89cb97eb4b09af03985fcd39990cbf8094161571 /src/rules.c
parentcb93ea39de50391d40083d87c180793411cfa658 (diff)
downloadlibsolv-388fa5c318586b1fec7a8b8d0b9fb35e7e5d874a.tar.gz
libsolv-388fa5c318586b1fec7a8b8d0b9fb35e7e5d874a.tar.bz2
libsolv-388fa5c318586b1fec7a8b8d0b9fb35e7e5d874a.zip
do not add back cleandeps_updatepkgs packages [bnc#841781]
Diffstat (limited to 'src/rules.c')
-rw-r--r--src/rules.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/rules.c b/src/rules.c
index af3b6b1..59272fd 100644
--- a/src/rules.c
+++ b/src/rules.c
@@ -3338,6 +3338,15 @@ solver_createcleandepsmap(Solver *solv, Map *cleandepsmap, int unneeded)
if (pool->solvables[p].repo == installed)
MAPSET(&userinstalled, p - installed->start);
}
+ if (!unneeded && solv->cleandeps_updatepkgs)
+ {
+ for (i = 0; i < solv->cleandeps_updatepkgs->count; i++)
+ {
+ p = solv->cleandeps_updatepkgs->elements[i];
+ if (pool->solvables[p].repo == installed)
+ MAPSET(&userinstalled, p - installed->start);
+ }
+ }
MAPSET(&im, SYSTEMSOLVABLE); /* in case we cleared it above */
for (p = installed->start; p < installed->end; p++)
if (MAPTST(&im, p))