summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pym/portage_dep.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/pym/portage_dep.py b/pym/portage_dep.py
index 0cb49691d..a528f7026 100644
--- a/pym/portage_dep.py
+++ b/pym/portage_dep.py
@@ -583,10 +583,15 @@ def match_from_list(mydep, candidate_list):
mylist = [cpv for cpv in candidate_list if cpvequal(cpv, mycpv)]
elif operator == "=*": # glob match
- # The old verion ignored _tag suffixes... This one doesn't.
for x in candidate_list:
- if cpvequal(x[0:len(mycpv)], mycpv):
+ xcpv = x[:min(len(x), len(mycpv))]
+ if xcpv == mycpv:
mylist.append(x)
+ else:
+ while not isspecific(xcpv):
+ xcpv = xcpv[:-1]
+ if cpvequal(xcpv, mycpv):
+ mylist.append(x)
elif operator == "~": # version, any revision, match
for x in candidate_list: