commit:     3d88c2912ee04e9bb9d2359e3a62ee9f22056447
Author:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Thu Oct  3 11:49:48 2019 +0000
Commit:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Thu Oct  3 11:49:48 2019 +0000
URL:        https://gitweb.gentoo.org/proj/portage-utils.git/commit/?id=3d88c291

qgrep: fix matching revisioned ebuilds

Bug: https://bugs.gentoo.org/696078
Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>

 TODO.md | 1 +
 qgrep.c | 7 ++++---
 2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/TODO.md b/TODO.md
index 299cf17..3db00f7 100644
--- a/TODO.md
+++ b/TODO.md
@@ -32,6 +32,7 @@
   foo-(1234)\_alpha(56789)
 - these limits should not be an issue for all practical purposes
 - remove zalloc from atom explode (just initialise what needs to)
+- make PVR match PMS https://dev.gentoo.org/~ulm/pms/head/pms.html#x1-10800011
 
 # qmerge
 

diff --git a/qgrep.c b/qgrep.c
index 1f6d0de..2a64d1b 100644
--- a/qgrep.c
+++ b/qgrep.c
@@ -416,14 +416,15 @@ qgrep_cache_cb(tree_pkg_ctx *pkg_ctx, void *priv)
        }
 
        /* cat/pkg/pkg-ver.ebuild */
-       snprintf(buf, sizeof(buf), "%s/%s/%s.ebuild",
-                       patom->CATEGORY, patom->PN, patom->P);
+       snprintf(buf, sizeof(buf), "%s/%s/%s-%s.ebuild",
+                       patom->CATEGORY, patom->PN, patom->PN,
+                       patom->PR_int > 0 ? patom->PVR : patom->PV);
 
        label = NULL;
        if (data->show_name) {
                if (data->show_repo)
                        patom = tree_get_atom(pkg_ctx, true);
-               atom_format_r(name, sizeof(name), "%[CATEGORY]%[P]%[REPO]", 
patom);
+               atom_format_r(name, sizeof(name), "%[CATEGORY]%[PF]%[REPO]", 
patom);
                label = name;
        } else if (data->show_filename) {
                label = buf;

Reply via email to