From: Michael Schroeder Date: Tue, 14 Jun 2016 14:51:33 +0000 (+0200) Subject: Use repo_rewrite_suse_deps instead of the repo_fix functions X-Git-Tag: 0.6.23~14 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=09b5fb29a2f5aee19151050b0237e57981e41192;p=thirdparty%2Flibsolv.git Use repo_rewrite_suse_deps instead of the repo_fix functions Do not use the repo_fix functions in new code! --- diff --git a/ext/repo_content.c b/ext/repo_content.c index 0cd1293d..b12c4cdc 100644 --- a/ext/repo_content.c +++ b/ext/repo_content.c @@ -404,7 +404,7 @@ repo_add_content(Repo *repo, FILE *fp, int flags) if (s->name && s->arch != ARCH_SRC && s->arch != ARCH_NOSRC) s->provides = repo_addid_dep(repo, s->provides, pool_rel2id(pool, s->name, s->evr, REL_EQ, 1), 0); if (code10) - s->supplements = repo_fix_supplements(repo, s->provides, s->supplements, 0); + repo_rewrite_suse_deps(s, 0); } /* create new solvable */ s = pool_id2solvable(pool, repo_add_solvable(repo)); @@ -538,7 +538,7 @@ repo_add_content(Repo *repo, FILE *fp, int flags) if (s->name && s->arch != ARCH_SRC && s->arch != ARCH_NOSRC) s->provides = repo_addid_dep(repo, s->provides, pool_rel2id(pool, s->name, s->evr, REL_EQ, 1), 0); if (code10) - s->supplements = repo_fix_supplements(repo, s->provides, s->supplements, 0); + repo_rewrite_suse_deps(s, 0); /* now for every other arch, clone the product except the architecture */ for (i = 0; i < numotherarchs; ++i) diff --git a/ext/repo_helix.c b/ext/repo_helix.c index f495be79..6358f726 100644 --- a/ext/repo_helix.c +++ b/ext/repo_helix.c @@ -636,8 +636,7 @@ endElement(void *userData, const char *name) /* ensure self-provides */ if (s->name && s->arch != ARCH_SRC && s->arch != ARCH_NOSRC) s->provides = repo_addid_dep(pd->repo, s->provides, pool_rel2id(pool, s->name, s->evr, REL_EQ, 1), 0); - s->supplements = repo_fix_supplements(pd->repo, s->provides, s->supplements, pd->freshens); - s->conflicts = repo_fix_conflicts(pd->repo, s->conflicts); + repo_rewrite_suse_deps(s, pd->freshens); pd->freshens = 0; /* see bugzilla bnc#190163 */ diff --git a/ext/repo_rpmdb.c b/ext/repo_rpmdb.c index 94450235..95756c03 100644 --- a/ext/repo_rpmdb.c +++ b/ext/repo_rpmdb.c @@ -990,8 +990,7 @@ rpm2solv(Pool *pool, Repo *repo, Repodata *data, Solvable *s, RpmHead *rpmhead, s->supplements = makedeps(pool, repo, rpmhead, TAG_SUPPLEMENTNAME, TAG_SUPPLEMENTVERSION, TAG_SUPPLEMENTFLAGS, 0, 0); s->enhances = makedeps(pool, repo, rpmhead, TAG_ENHANCENAME, TAG_ENHANCEVERSION, TAG_ENHANCEFLAGS, 0, 0); - s->supplements = repo_fix_supplements(repo, s->provides, s->supplements, 0); - s->conflicts = repo_fix_conflicts(repo, s->conflicts); + repo_rewrite_suse_deps(s, 0); if (data && ignq.count) repodata_set_idarray(data, s - pool->solvables, SOLVABLE_PREREQ_IGNOREINST, &ignq); diff --git a/ext/repo_rpmmd.c b/ext/repo_rpmmd.c index 729f4f7c..8854bcac 100644 --- a/ext/repo_rpmmd.c +++ b/ext/repo_rpmmd.c @@ -1119,8 +1119,7 @@ endElement(void *userData, const char *name) s->evr = ID_EMPTY; /* some patterns have this */ if (s->name && s->arch != ARCH_SRC && s->arch != ARCH_NOSRC) s->provides = repo_addid_dep(repo, s->provides, pool_rel2id(pool, s->name, s->evr, REL_EQ, 1), 0); - s->supplements = repo_fix_supplements(repo, s->provides, s->supplements, pd->freshens); - s->conflicts = repo_fix_conflicts(repo, s->conflicts); + repo_rewrite_suse_deps(s, pd->freshens); pd->freshens = 0; pd->kind = 0; pd->solvable = 0; diff --git a/ext/repo_susetags.c b/ext/repo_susetags.c index a96ba974..be73a7f9 100644 --- a/ext/repo_susetags.c +++ b/ext/repo_susetags.c @@ -388,12 +388,8 @@ finish_solvable(struct parsedata *pd, Solvable *s, Offset freshens) /* A self provide, except for source packages. This is harmless to do twice (in case we see the same package twice). */ if (s->name && s->arch != ARCH_SRC && s->arch != ARCH_NOSRC) - s->provides = repo_addid_dep(pd->repo, s->provides, - pool_rel2id(pool, s->name, s->evr, REL_EQ, 1), 0); - /* XXX This uses repo_addid_dep internally, so should also be - harmless to do twice. */ - s->supplements = repo_fix_supplements(pd->repo, s->provides, s->supplements, freshens); - s->conflicts = repo_fix_conflicts(pd->repo, s->conflicts); + s->provides = repo_addid_dep(pd->repo, s->provides, pool_rel2id(pool, s->name, s->evr, REL_EQ, 1), 0); + repo_rewrite_suse_deps(s, freshens); if (pd->ndirs) commit_diskusage(pd, handle); } diff --git a/ext/testcase.c b/ext/testcase.c index 6157c554..88720324 100644 --- a/ext/testcase.c +++ b/ext/testcase.c @@ -1264,8 +1264,7 @@ finish_v2_solvable(Pool *pool, Repodata *data, Solvable *s, char *filelist, int repodata_add_dirstr(data, s - pool->solvables, SOLVABLE_FILELIST, did, p); } } - s->supplements = repo_fix_supplements(s->repo, s->provides, s->supplements, 0); - s->conflicts = repo_fix_conflicts(s->repo, s->conflicts); + repo_rewrite_suse_deps(s, 0); } /* stripped down version of susetags parser used for testcases */