You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jv...@apache.org on 2014/06/12 04:26:35 UTC

git commit: MNG-5638: Whitespaces matter in configuration can cause the incorrect repo to be selected

Repository: maven
Updated Branches:
  refs/heads/master 425c66358 -> fddade227


MNG-5638: Whitespaces matter in <mirrorOf> configuration can cause the incorrect repo to be selected


Project: http://git-wip-us.apache.org/repos/asf/maven/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven/commit/fddade22
Tree: http://git-wip-us.apache.org/repos/asf/maven/tree/fddade22
Diff: http://git-wip-us.apache.org/repos/asf/maven/diff/fddade22

Branch: refs/heads/master
Commit: fddade227d17f2cb9fe7e71c14cf5591cfa96851
Parents: 425c663
Author: Jason van Zyl <ja...@tesla.io>
Authored: Wed Jun 11 22:26:18 2014 -0400
Committer: Jason van Zyl <ja...@tesla.io>
Committed: Wed Jun 11 22:26:18 2014 -0400

----------------------------------------------------------------------
 .../maven/repository/DefaultMirrorSelector.java     |  1 +
 .../maven/repository/DefaultMirrorSelectorTest.java | 16 ++++++++++++++++
 2 files changed, 17 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven/blob/fddade22/maven-compat/src/main/java/org/apache/maven/repository/DefaultMirrorSelector.java
----------------------------------------------------------------------
diff --git a/maven-compat/src/main/java/org/apache/maven/repository/DefaultMirrorSelector.java b/maven-compat/src/main/java/org/apache/maven/repository/DefaultMirrorSelector.java
index 37fe3ab..53e7bd4 100644
--- a/maven-compat/src/main/java/org/apache/maven/repository/DefaultMirrorSelector.java
+++ b/maven-compat/src/main/java/org/apache/maven/repository/DefaultMirrorSelector.java
@@ -89,6 +89,7 @@ public class DefaultMirrorSelector
             String[] repos = pattern.split( "," );
             for ( String repo : repos )
             {
+                repo = repo.trim();
                 // see if this is a negative match
                 if ( repo.length() > 1 && repo.startsWith( "!" ) )
                 {

http://git-wip-us.apache.org/repos/asf/maven/blob/fddade22/maven-compat/src/test/java/org/apache/maven/repository/DefaultMirrorSelectorTest.java
----------------------------------------------------------------------
diff --git a/maven-compat/src/test/java/org/apache/maven/repository/DefaultMirrorSelectorTest.java b/maven-compat/src/test/java/org/apache/maven/repository/DefaultMirrorSelectorTest.java
new file mode 100644
index 0000000..52a871d
--- /dev/null
+++ b/maven-compat/src/test/java/org/apache/maven/repository/DefaultMirrorSelectorTest.java
@@ -0,0 +1,16 @@
+package org.apache.maven.repository;
+
+import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.artifact.repository.DefaultArtifactRepository;
+import org.codehaus.plexus.PlexusTestCase;
+
+public class DefaultMirrorSelectorTest extends PlexusTestCase {
+
+  public void testMirrorWithMirroOfPatternContainingANegationIsNotSelected() {
+    ArtifactRepository repository = new DefaultArtifactRepository("snapshots.repo", "http://whatever", null);
+    String pattern = "external:*, !snapshots.repo";
+    boolean matches = DefaultMirrorSelector.matchPattern(repository, pattern);
+    System.out.println(matches);
+    assertFalse(matches);
+  }
+}