You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by sc...@apache.org on 2016/12/21 20:52:20 UTC

svn commit: r1775563 - in /uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/impl: CASImpl.java FeatureStructureImplC.java

Author: schor
Date: Wed Dec 21 20:52:20 2016
New Revision: 1775563

URL: http://svn.apache.org/viewvc?rev=1775563&view=rev
Log:
[UIMA-4674] fix npe in pretty-print of arrays; fix reset and test of empty modified tracking info

Modified:
    uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java
    uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/impl/FeatureStructureImplC.java

Modified: uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java
URL: http://svn.apache.org/viewvc/uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java?rev=1775563&r1=1775562&r2=1775563&view=diff
==============================================================================
--- uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java (original)
+++ uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java Wed Dec 21 20:52:20 2016
@@ -91,7 +91,6 @@ import org.apache.uima.cas.impl.SlotKind
 import org.apache.uima.cas.text.AnnotationFS;
 import org.apache.uima.cas.text.AnnotationIndex;
 import org.apache.uima.cas.text.Language;
-import org.apache.uima.internal.util.Int2ObjHashMap;
 import org.apache.uima.internal.util.IntVector;
 import org.apache.uima.internal.util.Misc;
 import org.apache.uima.internal.util.PositiveIntSet;
@@ -623,7 +622,11 @@ public class CASImpl extends AbstractCas
       }
 
       trackingMark = null;
-      if (null != modifiedPreexistingFSs) modifiedPreexistingFSs.clear();
+      if (null != modifiedPreexistingFSs) {
+        modifiedPreexistingFSs.clear();
+      }
+      
+      trackingMarkList = null;
     }
     
     void switchClassLoader(ClassLoader newClassLoader) {
@@ -4460,7 +4463,10 @@ public class CASImpl extends AbstractCas
   			this);
   	if (this.svd.modifiedPreexistingFSs == null) {
   	  this.svd.modifiedPreexistingFSs = new IdentityHashMap<>();
-  	} else {errorMultipleMarkers();}
+  	}
+  	if (this.svd.modifiedPreexistingFSs.size() > 0) {
+  	  errorMultipleMarkers();
+  	}
 
   	if (this.svd.trackingMarkList == null) {
   	  this.svd.trackingMarkList = new ArrayList<MarkerImpl>();

Modified: uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/impl/FeatureStructureImplC.java
URL: http://svn.apache.org/viewvc/uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/impl/FeatureStructureImplC.java?rev=1775563&r1=1775562&r2=1775563&view=diff
==============================================================================
--- uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/impl/FeatureStructureImplC.java (original)
+++ uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/impl/FeatureStructureImplC.java Wed Dec 21 20:52:20 2016
@@ -946,6 +946,9 @@ public class FeatureStructureImplC exten
   }
 
   private final void getPrintRefs(PrintReferences printRefs, FeatureStructureImplC fs) {
+    if (null == fs) {
+      return;
+    }
     boolean seenBefore = printRefs.addReference(fs);
     if (seenBefore) {
       return;