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=38592>. 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=38592 Summary: FOP gets in a endless loop Product: Fop Version: 0.20.5 Platform: Other OS/Version: Windows XP Status: NEW Severity: major Priority: P2 Component: general AssignedTo: [email protected] ReportedBy: [EMAIL PROTECTED] The problem is located in this block in LineArea.java. the doHyphenation will return 0, and the if statement is entered because there was not enough room for the hyphenated word, and addWord will return 0, because its the beginning of the word and it will start all over. A workaround is to prevent the column size can be smaller then the size of a single character if (this.wrapOption == WrapOption.WRAP) { if (hyphProps.hyphenate == Hyphenate.TRUE) { int ret = wordStart; ret = this.doHyphenation(data, i, wordStart, this.getContentWidth() - (finalWidth + spaceWidth + pendingWidth), finalWidth + spaceWidth + embeddedLinkStart, ls, textState); // current word couldn't be hypenated // couldn't fit first word // I am at the beginning of my line if ((ret == wordStart) && (wordStart == start) && (finalWidth == 0)) { MessageHandler.log("area contents overflows" + " area in line " + getLineText()); addSpacedWord(new String(data, wordStart, wordLength - 1), ls, embeddedLinkStart, spaceWidth, textState, false); finalWidth += wordWidth; wordWidth = 0; ret = i; } return ret; } else if (wordStart == start) { // first word overrun = true; // if not at start of line, return word start // to try again on a new line if (finalWidth > 0) { return wordStart; } } else { return wordStart; } } } -- 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.
