aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSergey Vladimirov <sergey@apache.org>2011-08-23 09:07:30 +0000
committerSergey Vladimirov <sergey@apache.org>2011-08-23 09:07:30 +0000
commit983ef6fd96f2070b0a434fbd4ac38ce09ed04223 (patch)
tree97e5b4506a37f84e0556ba4afaa3ed0f7710eba5
parent93156c819ed0d427eff6376ae9f340ca6cf2a67b (diff)
downloadpoi-983ef6fd96f2070b0a434fbd4ac38ce09ed04223.tar.gz
poi-983ef6fd96f2070b0a434fbd4ac38ce09ed04223.zip
update paragraph rebuilding for case when empty papx [n; n) happens at the end of file
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1160589 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--src/scratchpad/src/org/apache/poi/hwpf/model/PAPBinTable.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/scratchpad/src/org/apache/poi/hwpf/model/PAPBinTable.java b/src/scratchpad/src/org/apache/poi/hwpf/model/PAPBinTable.java
index 1f79d4001a..69c0c06196 100644
--- a/src/scratchpad/src/org/apache/poi/hwpf/model/PAPBinTable.java
+++ b/src/scratchpad/src/org/apache/poi/hwpf/model/PAPBinTable.java
@@ -208,10 +208,12 @@ public class PAPBinTable
final int startInclusive = lastParStart;
final int endExclusive = charIndex + 1;
+ boolean broken = false;
List<PAPX> papxs = new LinkedList<PAPX>();
for ( int papxIndex = lastPapxIndex; papxIndex < oldPapxSortedByEndPos
.size(); papxIndex++ )
{
+ broken = false;
PAPX papx = oldPapxSortedByEndPos.get( papxIndex );
assert startInclusive == 0
@@ -221,11 +223,16 @@ public class PAPBinTable
if ( papx.getEnd() - 1 > charIndex )
{
lastPapxIndex = papxIndex;
+ broken = true;
break;
}
papxs.add( papx );
}
+ if ( !broken )
+ {
+ lastPapxIndex = oldPapxSortedByEndPos.size() - 1;
+ }
if ( papxs.size() == 0 )
{