summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJohn Turner <jturner.usa@gmail.com>2025-11-22 01:20:55 +0000
committerJohn Turner <jturner.usa@gmail.com>2025-11-22 01:20:55 +0000
commit906288169218638df3053130b5d92040fc3d4f40 (patch)
tree3dfa910cfad40ab8da6dedaebc3e59e88eb1de4d /src
parente9603ce62ff9c53102c5e78375102aa031e433cb (diff)
downloadgentoo-utils-906288169218638df3053130b5d92040fc3d4f40.tar.gz
disallow wildcard after a build-id
Diffstat (limited to 'src')
-rw-r--r--src/atom/parsers.rs5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/atom/parsers.rs b/src/atom/parsers.rs
index fbbb2ce..e6ec2b0 100644
--- a/src/atom/parsers.rs
+++ b/src/atom/parsers.rs
@@ -368,11 +368,11 @@ impl<'a> Parseable<'a, &'a str> for Atom {
.and(Repo::parser().preceded_by(tag("::")).opt())
.and(usedeps())
.verify_output(
- |((((((((_, version_operator), _), _), _), star), _), _), _)| {
+ |((((((((_, version_operator), _), _), version), star), _), _), _)| {
matches!(
(version_operator, star),
(VersionOperator::Eq, Some(_) | None) | (_, None)
- )
+ ) && matches!((version.build_id(), star), (Some(_), None) | (None, _))
},
)
.map(
@@ -586,6 +586,7 @@ mod test {
">=kde-frameworks/kcrash-2.16.0:6*",
"0-f/merreka+m::k+",
"iev-a/h:/n=",
+ "=dev-ml/stdio-0-17*:=[ocamlopt?]",
];
for atom in atoms {