aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabian Groffen <grobian@gentoo.org>2019-06-09 11:22:48 +0200
committerFabian Groffen <grobian@gentoo.org>2019-06-09 11:22:48 +0200
commitb5f3c8c0e052faf2971ebc161545abd84af64486 (patch)
tree63c6837a45c9240ba27c5c9127fdfc439508d852
parentlibq/atom: add the antislot (diff)
downloadportage-utils-b5f3c8c0.tar.gz
portage-utils-b5f3c8c0.tar.bz2
portage-utils-b5f3c8c0.zip
qfile: fix atom_compare invocation and input
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
-rw-r--r--qfile.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/qfile.c b/qfile.c
index 421c8503..1480789e 100644
--- a/qfile.c
+++ b/qfile.c
@@ -92,15 +92,16 @@ static int qfile_cb(tree_pkg_ctx *pkg_ctx, void *priv)
int found = 0;
/* If exclude_pkg is not NULL, check it. We are looking for files
- * collisions, and must exclude one package.
- */
+ * collisions, and must exclude one package. */
if (state->exclude_pkg) {
/* see if CATEGORY matches */
if (state->exclude_atom->CATEGORY &&
strcmp(state->exclude_atom->CATEGORY, catname))
goto dont_skip_pkg;
- atom = tree_get_atom(pkg_ctx, false);
- if (atom_compare(state->exclude_atom, atom) != EQUAL)
+ atom = tree_get_atom(pkg_ctx,
+ state->exclude_atom->SLOT != NULL ||
+ state->exclude_atom->REPO != NULL);
+ if (atom_compare(atom, state->exclude_atom) != EQUAL)
goto dont_skip_pkg;
/* "(CAT/)?(PN|PF)" matches, and no SLOT specified */
if (state->exclude_slot == NULL)