Bug 44071 - endless loop in org.apache.fop.layoutmgr.ElementListUtils.removeLegalBreaks(..)
Summary: endless loop in org.apache.fop.layoutmgr.ElementListUtils.removeLegalBreaks(..)
Status: CLOSED FIXED
Alias: None
Product: Fop - Now in Jira
Classification: Unclassified
Component: page-master/layout (show other bugs)
Version: trunk
Hardware: PC Windows 2000
: P2 normal
Target Milestone: ---
Assignee: fop-dev
URL:
Keywords:
: 44607 (view as bug list)
Depends on:
Blocks:
 
Reported: 2007-12-13 05:38 UTC by Guillaume Levrero
Modified: 2012-04-01 07:09 UTC (History)
1 user (show)



Attachments
FO to reproduce bug (4.04 KB, text/plain)
2007-12-13 05:39 UTC, Guillaume Levrero
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Guillaume Levrero 2007-12-13 05:38:05 UTC
Hi,

Some of our FO that we use to generate PDF is locking FOP in an endless loop.
Looking at the code there is a "while" loop with a ListIterator.hasNext() exit
clause,  iteration is endlessly looping because of a ListIterator.next() call
and then a ListIterator.previous() call is made.

I included a simplified version of our FO to reproduce the bug.

Thanks

Guillaume
Comment 1 Guillaume Levrero 2007-12-13 05:39:11 UTC
Created attachment 21269 [details]
FO to reproduce bug
Comment 2 Vincent Hennebert 2007-12-13 07:08:43 UTC
Hi Guillaume,

Funny that I noticed the same recently.
There's another problem: el is cast into a BreakElement while it could also be a
KnuthPenalty.
You can safely remove calls to that method from you working copy, they aren't
necessary anyway.
I'll soon commit the change to the Trunk. Not sure yet if I'll just comment out
the method or delete it completely.
Comment 3 Vincent Hennebert 2007-12-13 07:56:13 UTC
I finally chose to remove it, so the bug can be closed.

Vincent
Comment 4 Vincent Hennebert 2008-03-14 10:44:07 UTC
*** Bug 44607 has been marked as a duplicate of this bug. ***
Comment 5 Glenn Adams 2012-04-01 07:09:34 UTC
batch transition pre-FOP1.0 resolved+fixed bugs to closed+fixed