--- a/rust/hg-core/src/filepatterns.rs Wed Nov 16 16:38:42 2022 +0100
+++ b/rust/hg-core/src/filepatterns.rs Wed Nov 16 15:39:10 2022 +0100
@@ -205,7 +205,14 @@
&b"(?"[..],
&pattern[s + 2..e - 1],
&b":"[..],
- &b".*"[..],
+ if pattern[e] == b'^'
+ || pattern[e] == b'*'
+ || pattern[e..].starts_with(b".*")
+ {
+ &b""[..]
+ } else {
+ &b".*"[..]
+ },
&pattern[e..],
&b")"[..],
]
@@ -752,5 +759,14 @@
.unwrap(),
Some(b"(?ia:.*ba{2}r)".to_vec()),
);
+ assert_eq!(
+ build_single_regex(&IgnorePattern::new(
+ PatternSyntax::RelRegexp,
+ b"(?ia)^ba{2}r",
+ Path::new("")
+ ))
+ .unwrap(),
+ Some(b"(?ia:^ba{2}r)".to_vec()),
+ );
}
}