diff options
author | Fabian Groffen <grobian@gentoo.org> | 2019-05-10 18:40:50 +0200 |
---|---|---|
committer | Fabian Groffen <grobian@gentoo.org> | 2019-05-10 18:40:50 +0200 |
commit | c7e04780a3161d6e8785c175680751839f9d768b (patch) | |
tree | ee14b5bc9de29e028ba11011a39035478f563a38 | |
parent | README: update after maintainer mode addition (diff) | |
download | portage-utils-c7e04780.tar.gz portage-utils-c7e04780.tar.bz2 portage-utils-c7e04780.zip |
qgrep: use tree_get_atom
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
-rw-r--r-- | qgrep.c | 17 |
1 files changed, 4 insertions, 13 deletions
@@ -391,9 +391,7 @@ qgrep_cache_cb(tree_pkg_ctx *pkg_ctx, void *priv) int ret; int pfd; - snprintf(buf, sizeof(buf), "%s/%s", - pkg_ctx->cat_ctx->name, pkg_ctx->name); - patom = atom_explode(buf); + patom = tree_get_atom(pkg_ctx, false); if (patom == NULL) return EXIT_FAILURE; @@ -403,10 +401,8 @@ qgrep_cache_cb(tree_pkg_ctx *pkg_ctx, void *priv) if (atom_compare(patom, *d) == EQUAL) break; } - if (*d == NULL) { - atom_implode(patom); + if (*d == NULL) return EXIT_FAILURE; - } } /* need to construct path in portdir to ebuild, pass it to grep */ @@ -423,6 +419,7 @@ qgrep_cache_cb(tree_pkg_ctx *pkg_ctx, void *priv) label = NULL; if (data->show_name) { + /* this is a super-optimisation, should get it from the full atom */ char *repo = data->show_repo ? cctx->repo : NULL; snprintf(name, sizeof(name), "%s%s/%s%s%s%s%s%s", BOLD, patom->CATEGORY, BLUE, patom->P, GREEN, @@ -434,8 +431,6 @@ qgrep_cache_cb(tree_pkg_ctx *pkg_ctx, void *priv) ret = qgrep_grepat(pfd, buf, label, data); - atom_implode(patom); - return ret; } @@ -450,9 +445,7 @@ qgrep_vdb_cb(tree_pkg_ctx *pkg_ctx, void *priv) int ret; int pfd; - snprintf(buf, sizeof(buf), "%s/%s", - pkg_ctx->cat_ctx->name, pkg_ctx->name); - patom = atom_explode(buf); + patom = tree_get_atom(pkg_ctx, false); if (patom == NULL) return EXIT_FAILURE; @@ -487,8 +480,6 @@ qgrep_vdb_cb(tree_pkg_ctx *pkg_ctx, void *priv) ret = qgrep_grepat(pfd, buf, label, data); - atom_implode(patom); - return ret; } |