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 );


Reply via email to