This is an automated email from the ASF dual-hosted git repository. paulk pushed a commit to branch GROOVY_5_0_X in repository https://gitbox.apache.org/repos/asf/groovy.git
commit fd7e8e9caba975fff56840294bfd568eb0d37a6d Author: Kamil Krzywanski <[email protected]> AuthorDate: Sat Oct 25 15:29:55 2025 +0200 Use compiled Pattern for path splitting instead of String.split in ClassFinder Signed-off-by: Kamil Krzywanski <[email protected]> --- src/main/java/org/codehaus/groovy/vmplugin/v9/ClassFinder.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/codehaus/groovy/vmplugin/v9/ClassFinder.java b/src/main/java/org/codehaus/groovy/vmplugin/v9/ClassFinder.java index bcfc441470..6231648859 100644 --- a/src/main/java/org/codehaus/groovy/vmplugin/v9/ClassFinder.java +++ b/src/main/java/org/codehaus/groovy/vmplugin/v9/ClassFinder.java @@ -127,8 +127,8 @@ public class ClassFinder { boolean wfs = "file".equals(uri.getScheme()); if (wfs) prefix = prefix.replace("/", File.separator); - final String sepPattern = Pattern.quote(wfs ? File.separator : "/"); - final int prefixElemCnt = prefix.trim().isEmpty() ? 0 : prefix.split(sepPattern).length; + final Pattern sepPattern = Pattern.compile(Pattern.quote(wfs ? File.separator : "/")); + final int prefixElemCnt = prefix.trim().isEmpty() ? 0 : sepPattern.split(prefix).length; Map<String, Set<String>> result = new LinkedHashMap<>(); Tuple2<FileSystem, Boolean> fsMaybeNew = null; @@ -142,7 +142,7 @@ public class ClassFinder { @Override public FileVisitResult visitFile(Path path, BasicFileAttributes attrs) { - String[] pathElems = path.toString().split(sepPattern); + String[] pathElems = sepPattern.split(path.toString()); int nameCount = pathElems.length; if (nameCount <= prefixElemCnt) { return FileVisitResult.CONTINUE;
