You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by rf...@apache.org on 2012/10/07 23:10:31 UTC
svn commit: r1395384 - in /maven/shared/trunk/maven-shared-utils/src:
main/java/org/apache/maven/shared/utils/io/SelectorUtils.java
test/java/org/apache/maven/shared/utils/io/SelectorUtilsTest.java
Author: rfscholte
Date: Sun Oct 7 21:10:31 2012
New Revision: 1395384
URL: http://svn.apache.org/viewvc?rev=1395384&view=rev
Log:
Also pass an altered pattern to the matchAntPathPatternStart.
When testing assertAntDoesNotMatch( "/aaa", "" ) under Windows, the selector didn't recognize the separatorPatternStartSlashMismatch. Since the second argument gives an empty Array after tokenizing, the matchAntPathPatternStart thinks it is ready because the String is exhausted, so it returns true, where it should have been false in this rare case.
Modified:
maven/shared/trunk/maven-shared-utils/src/main/java/org/apache/maven/shared/utils/io/SelectorUtils.java
maven/shared/trunk/maven-shared-utils/src/test/java/org/apache/maven/shared/utils/io/SelectorUtilsTest.java
Modified: maven/shared/trunk/maven-shared-utils/src/main/java/org/apache/maven/shared/utils/io/SelectorUtils.java
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-shared-utils/src/main/java/org/apache/maven/shared/utils/io/SelectorUtils.java?rev=1395384&r1=1395383&r2=1395384&view=diff
==============================================================================
--- maven/shared/trunk/maven-shared-utils/src/main/java/org/apache/maven/shared/utils/io/SelectorUtils.java (original)
+++ maven/shared/trunk/maven-shared-utils/src/main/java/org/apache/maven/shared/utils/io/SelectorUtils.java Sun Oct 7 21:10:31 2012
@@ -121,10 +121,10 @@ public final class SelectorUtils
pattern.length() - PATTERN_HANDLER_SUFFIX.length() );
}
+ String altPattern = pattern.replace( '\\', '/' );
String altStr = str.replace( '\\', '/' );
- return matchAntPathPatternStart( pattern, str, File.separator, isCaseSensitive )
- || matchAntPathPatternStart( pattern, altStr, "/", isCaseSensitive );
+ return matchAntPathPatternStart( altPattern, altStr, "/", isCaseSensitive );
}
}
Modified: maven/shared/trunk/maven-shared-utils/src/test/java/org/apache/maven/shared/utils/io/SelectorUtilsTest.java
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-shared-utils/src/test/java/org/apache/maven/shared/utils/io/SelectorUtilsTest.java?rev=1395384&r1=1395383&r2=1395384&view=diff
==============================================================================
--- maven/shared/trunk/maven-shared-utils/src/test/java/org/apache/maven/shared/utils/io/SelectorUtilsTest.java (original)
+++ maven/shared/trunk/maven-shared-utils/src/test/java/org/apache/maven/shared/utils/io/SelectorUtilsTest.java Sun Oct 7 21:10:31 2012
@@ -56,14 +56,15 @@ public class SelectorUtilsTest
@Test
public void testAntPatternStrings()
{
- assertAntDoesNotMatch(File.separator + "aaa", "");
- assertAntMatch("aaa", "");
- assertAntMatch("/aaa/bbb", "/aaa/bbb");
- assertAntMatch("/aaa/**", "/aaa/bbb");
- assertAntDoesNotMatch("/aaa/**", "/ccc/bbb");
- assertAntMatch( "/aaa/**", "\\aaa\\bbb");
- assertAntDoesNotMatch("/aaa/**", "\\ccc\\bbb");
- assertAntDoesNotMatch("/aaa/", "\\aaa\\bbb");
+ assertAntDoesNotMatch( "/aaa", "" );
+ assertAntDoesNotMatch( "\\aaa", "" );
+ assertAntMatch( "aaa", "" );
+ assertAntMatch( "/aaa/bbb", "/aaa/bbb" );
+ assertAntMatch( "/aaa/**", "/aaa/bbb" );
+ assertAntDoesNotMatch( "/aaa/**", "/ccc/bbb" );
+ assertAntMatch( "/aaa/**", "\\aaa\\bbb" );
+ assertAntDoesNotMatch( "/aaa/**", "\\ccc\\bbb" );
+ assertAntDoesNotMatch( "/aaa/", "\\aaa\\bbb" );
}