This is an automated email from the ASF dual-hosted git repository.

jsedding pushed a commit to branch SLING-13308-bad-path-handling-on-windows
in repository 
https://gitbox.apache.org/repos/asf/sling-scriptingbundle-maven-plugin.git

commit dfde1e925ddf37b5c497f2b7875c84255b3b409a
Author: Julian Sedding <[email protected]>
AuthorDate: Wed Aug 12 12:57:28 2026 +0200

    SLING-13308 - windows only: incorrect capabilities for escaped resource 
paths
---
 .../plugin/processor/ResourceTypeFolderAnalyser.java     | 14 ++++++--------
 .../sling/scriptingbundle/plugin/AbstractPluginTest.java | 16 +++++++---------
 2 files changed, 13 insertions(+), 17 deletions(-)

diff --git 
a/src/main/java/org/apache/sling/scriptingbundle/plugin/processor/ResourceTypeFolderAnalyser.java
 
b/src/main/java/org/apache/sling/scriptingbundle/plugin/processor/ResourceTypeFolderAnalyser.java
index d1df4df..bbc49ee 100644
--- 
a/src/main/java/org/apache/sling/scriptingbundle/plugin/processor/ResourceTypeFolderAnalyser.java
+++ 
b/src/main/java/org/apache/sling/scriptingbundle/plugin/processor/ResourceTypeFolderAnalyser.java
@@ -60,14 +60,12 @@ public class ResourceTypeFolderAnalyser {
         if (resourceTypeDirectory.startsWith(scriptsDirectory) && 
resourceTypeFolderPredicate.test(resourceTypeDirectory)) {
             try (DirectoryStream<Path> resourceTypeDirectoryStream = 
Files.newDirectoryStream(resourceTypeDirectory)) {
                 Path relativeResourceTypeDirectory = 
scriptsDirectory.relativize(resourceTypeDirectory);
-                final ResourceType resourceType =
-                        ResourceType.parseResourceType(
-                            FilenameUtils.normalize(inContentPackage ?
-                                
PlatformNameFormat.getRepositoryPath(relativeResourceTypeDirectory.toString()) :
-                                relativeResourceTypeDirectory.toString(),
-                        true
-                            )
-                        );
+                String resourceTypePath = 
FilenameUtils.normalize(relativeResourceTypeDirectory.toString(), true);
+                final ResourceType resourceType = 
ResourceType.parseResourceType(
+                        inContentPackage
+                                ? 
PlatformNameFormat.getRepositoryPath(resourceTypePath)
+                                : resourceTypePath
+                );
                 resourceTypeDirectoryStream.forEach(entry -> {
                     if (Files.isRegularFile(entry)) {
                         Path file = entry.getFileName();
diff --git 
a/src/test/java/org/apache/sling/scriptingbundle/plugin/AbstractPluginTest.java 
b/src/test/java/org/apache/sling/scriptingbundle/plugin/AbstractPluginTest.java
index ee5adb2..f609fb8 100644
--- 
a/src/test/java/org/apache/sling/scriptingbundle/plugin/AbstractPluginTest.java
+++ 
b/src/test/java/org/apache/sling/scriptingbundle/plugin/AbstractPluginTest.java
@@ -243,22 +243,20 @@ public abstract class AbstractPluginTest {
 
     private void verifyCapabilities(Capabilities capabilities, 
Set<ProvidedResourceTypeCapability> pExpected, 
Set<RequiredResourceTypeCapability> rExpected, Set<ProvidedScriptCapability> 
sExpected) {
         Set<ProvidedResourceTypeCapability> provided = new 
HashSet<>(capabilities.getProvidedResourceTypeCapabilities());
-        StringBuilder missingProvided = new StringBuilder();
+        StringBuilder differences = new StringBuilder();
         for (ProvidedResourceTypeCapability capability : pExpected) {
             boolean removed = provided.remove(capability);
             if (!removed) {
-                missingProvided.append("Missing capability: 
").append(capability.toString()).append(System.lineSeparator());
+                differences.append("Missing capability: 
").append(capability.toString()).append(System.lineSeparator());
             }
         }
-        if (missingProvided.length() > 0) {
-            fail(missingProvided.toString());
-        }
-        StringBuilder extraProvided = new StringBuilder();
+
         for (ProvidedResourceTypeCapability capability : provided) {
-            extraProvided.append("Extra provided capability: 
").append(capability.toString()).append(System.lineSeparator());
+            differences.append("Extra provided capability: 
").append(capability.toString()).append(System.lineSeparator());
         }
-        if (extraProvided.length() > 0) {
-            fail(extraProvided.toString());
+
+        if (differences.length() > 0) {
+            fail(differences.toString());
         }
     
         Set<RequiredResourceTypeCapability> required = new 
HashSet<>(capabilities.getRequiredResourceTypeCapabilities());

Reply via email to