]> source.dussan.org Git - poi.git/commitdiff
handling case with overlapping bookmarks and fields
authorSergey Vladimirov <sergey@apache.org>
Mon, 22 Aug 2011 11:07:06 +0000 (11:07 +0000)
committerSergey Vladimirov <sergey@apache.org>
Mon, 22 Aug 2011 11:07:06 +0000 (11:07 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1160201 13f79535-47bb-0310-9956-ffa450edef68

src/scratchpad/src/org/apache/poi/hwpf/converter/AbstractWordConverter.java

index 6f35f1d6df4d554dd325bb7c0700117b4338926d..5da89f3afe5cfab10728e41d8338b78f83b38b0a 100644 (file)
@@ -81,6 +81,13 @@ public abstract class AbstractWordConverter
         {
             return start < o.start ? -1 : start == o.start ? 0 : 1;
         }
+
+        @Override
+        public String toString()
+        {
+            return "Structure [" + start + "; " + end + "): "
+                    + structure.toString();
+        }
     }
 
     private static final byte BEL_MARK = 7;
@@ -116,8 +123,9 @@ public abstract class AbstractWordConverter
                 return;
             }
 
-            if ( ( another.start > structure.start && another.end <= structure.end )
-                    || ( another.start >= structure.start && another.end < structure.end ) )
+            if ( ( structure.start < another.start && another.start < structure.end )
+                    || ( structure.start < another.start && another.end <= structure.end )
+                    || ( structure.start <= another.start && another.end < structure.end ) )
             {
                 iterator.remove();
                 continue;