Author: brianf Date: Wed Mar 5 17:13:12 2008 New Revision: 634105 URL: http://svn.apache.org/viewvc?rev=634105&view=rev Log: MNG-2123: handle the NPE better if it ever happens for another reason.
Modified: maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ResolutionNode.java Modified: maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ResolutionNode.java URL: http://svn.apache.org/viewvc/maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ResolutionNode.java?rev=634105&r1=634104&r2=634105&view=diff ============================================================================== --- maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ResolutionNode.java (original) +++ maven/components/branches/maven-2.0.x/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ResolutionNode.java Wed Mar 5 17:13:12 2008 @@ -19,10 +19,6 @@ * under the License. */ -import org.apache.maven.artifact.Artifact; -import org.apache.maven.artifact.resolver.filter.ArtifactFilter; -import org.apache.maven.artifact.versioning.OverConstrainedVersionException; - import java.util.ArrayList; import java.util.Collections; import java.util.Iterator; @@ -30,6 +26,11 @@ import java.util.List; import java.util.Set; +import org.apache.maven.artifact.Artifact; +import org.apache.maven.artifact.resolver.filter.ArtifactFilter; +import org.apache.maven.artifact.versioning.ArtifactVersion; +import org.apache.maven.artifact.versioning.OverConstrainedVersionException; + public class ResolutionNode { private final Artifact artifact; @@ -137,8 +138,17 @@ if ( artifact.getVersion() == null ) { // set the recommended version - String version = artifact.getSelectedVersion().toString(); - artifact.selectVersion( version ); + ArtifactVersion selected = artifact.getSelectedVersion(); + //MNG-2123: null is a valid response to getSelectedVersion, don't + //assume it won't ever be. + if (selected != null) + { + artifact.selectVersion( selected.toString() ); + } + else + { + throw new OverConstrainedVersionException("Unable to get a selected Version for "+ artifact.getArtifactId(),artifact); + } } ids.add( 0, artifact );