DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUGĀ·
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=43237>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED ANDĀ·
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=43237

           Summary: IndexOutOfBoundsException
           Product: Fop
           Version: 0.94
          Platform: All
        OS/Version: other
            Status: NEW
          Severity: normal
          Priority: P2
         Component: general
        AssignedTo: fop-dev@xmlgraphics.apache.org
        ReportedBy: [EMAIL PROTECTED]
                CC: [EMAIL PROTECTED]


This IndexOutOfBoundsException:

===============================================================
java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
        at java.util.ArrayList.RangeCheck(ArrayList.java:508)
        at java.util.ArrayList.get(ArrayList.java:320)
        at
org.apache.fop.layoutmgr.PageBreakingAlgorithm.computeDemerits(PageBreakingAlgorithm.java:644)
        at
org.apache.fop.layoutmgr.BreakingAlgorithm.considerLegalBreak(BreakingAlgorithm.java:737)
        at
org.apache.fop.layoutmgr.PageBreakingAlgorithm.considerLegalBreak(PageBreakingAlgorithm.java:309)
        at
org.apache.fop.layoutmgr.BreakingAlgorithm.findBreakingPoints(BreakingAlgorithm.java:485)
        at
org.apache.fop.layoutmgr.BreakingAlgorithm.findBreakingPoints(BreakingAlgorithm.java:403)
        at
org.apache.fop.layoutmgr.AbstractBreaker.doLayout(AbstractBreaker.java:338)
        at
org.apache.fop.layoutmgr.AbstractBreaker.doLayout(AbstractBreaker.java:263)
        at
org.apache.fop.layoutmgr.PageSequenceLayoutManager.activateLayout(PageSequenceLayoutManager.java:144)
        at
org.apache.fop.area.AreaTreeHandler.endPageSequence(AreaTreeHandler.java:233)
        at
org.apache.fop.fo.pagination.PageSequence.endOfNode(PageSequence.java:145)
        at
org.apache.fop.fo.FOTreeBuilder$MainFOHandler.endElement(FOTreeBuilder.java:378)
        at org.apache.fop.fo.FOTreeBuilder.endElement(FOTreeBuilder.java:194)
===============================================================

Workaround:

  In src/java/org/apache/fop/layoutmgr/PageBreakingAlgorithm.java, replace:

===============================================================
if (footnotesPending) {
    if (footnoteListIndex < footnotesList.size() - 1) {
        // add demerits for the deferred footnotes
        demerits += (footnotesList.size() - 1 - footnoteListIndex) 
                        * deferredFootnoteDemerits;
    }
    if (footnoteElementIndex 
            < ((LinkedList) footnotesList.get(footnoteListIndex)).size() - 1) {
        // add demerits for the footnote split between pages
        demerits += splitFootnoteDemerits;
    }
}
===============================================================
 
  by:

===============================================================
if (footnotesPending) {
    int footnotesListSize = footnotesList.size();
    if (footnoteListIndex < footnotesListSize - 1) {
        // add demerits for the deferred footnotes
        demerits += (footnotesListSize - 1 - footnoteListIndex) 
                        * deferredFootnoteDemerits;
    }
    if (footnoteListIndex < footnotesListSize &&
        footnoteElementIndex 
            < ((LinkedList) footnotesList.get(footnoteListIndex)).size() - 1) {
        // add demerits for the footnote split between pages
        demerits += splitFootnoteDemerits;
    }
}
===============================================================

-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

Reply via email to