Author: olamy
Date: Fri Jan 21 22:45:36 2011
New Revision: 1062063

URL: http://svn.apache.org/viewvc?rev=1062063&view=rev
Log:
[SCM-597] NPE in AccuRev provider changelog
Submitted by Grant Gardner

Modified:
    
maven/scm/trunk/maven-scm-providers/maven-scm-provider-accurev/src/main/java/org/apache/maven/scm/provider/accurev/cli/DiffConsumer.java
    
maven/scm/trunk/maven-scm-providers/maven-scm-provider-accurev/src/test/resources/diff-vvt.xml

Modified: 
maven/scm/trunk/maven-scm-providers/maven-scm-provider-accurev/src/main/java/org/apache/maven/scm/provider/accurev/cli/DiffConsumer.java
URL: 
http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-provider-accurev/src/main/java/org/apache/maven/scm/provider/accurev/cli/DiffConsumer.java?rev=1062063&r1=1062062&r2=1062063&view=diff
==============================================================================
--- 
maven/scm/trunk/maven-scm-providers/maven-scm-provider-accurev/src/main/java/org/apache/maven/scm/provider/accurev/cli/DiffConsumer.java
 (original)
+++ 
maven/scm/trunk/maven-scm-providers/maven-scm-provider-accurev/src/main/java/org/apache/maven/scm/provider/accurev/cli/DiffConsumer.java
 Fri Jan 21 22:45:36 2011
@@ -47,12 +47,12 @@ public class DiffConsumer
         {
             currentDifference = new FileDifference();
         }
-        else if ( "Stream2".equals( tagName ) )
+        else if ( "Stream2".equals( tagName ) && attributes.get( "Name" ) != 
null)
         {
             currentDifference.setElementId( Long.parseLong( attributes.get( 
"eid" ) ) );
             currentDifference.setNewVersion( attributes.get( "Name" ), 
attributes.get( "Version" ) );
         }
-        else if ( "Stream1".equals( tagName ) )
+        else if ( "Stream1".equals( tagName ) && attributes.get( "Name" ) != 
null )
         {
             currentDifference.setElementId( Long.parseLong( attributes.get( 
"eid" ) ) );
             currentDifference.setOldVersion( attributes.get( "Name" ), 
attributes.get( "Version" ) );
@@ -66,7 +66,9 @@ public class DiffConsumer
         String tagName = getTagName( tagPath );
         if ( "Element".equals( tagName ) )
         {
-            results.add( currentDifference );
+            if (currentDifference.getNewFile() != null || 
currentDifference.getOldFile() != null) {
+                results.add( currentDifference );
+            }
         }
     }
 

Modified: 
maven/scm/trunk/maven-scm-providers/maven-scm-provider-accurev/src/test/resources/diff-vvt.xml
URL: 
http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-provider-accurev/src/test/resources/diff-vvt.xml?rev=1062063&r1=1062062&r2=1062063&view=diff
==============================================================================
--- 
maven/scm/trunk/maven-scm-providers/maven-scm-provider-accurev/src/test/resources/diff-vvt.xml
 (original)
+++ 
maven/scm/trunk/maven-scm-providers/maven-scm-provider-accurev/src/test/resources/diff-vvt.xml
 Fri Jan 21 22:45:36 2011
@@ -43,6 +43,13 @@
           IsDir="no"
           elemType="text"/>
     </Change>
+     <Change
+        What="eid">
+      <Stream1
+          eid="9"/>
+      <Stream2
+          eid="23"/>
+    </Change>
   </Element>
   <Element>
     <Change


Reply via email to