[ https://issues.apache.org/jira/browse/PIVOT-772?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13071898#comment-13071898 ]
Roger Whitcomb commented on PIVOT-772: -------------------------------------- Hi Noel, Just tried it and it seems to work for the normal cases, but if I do a paste into a TextArea the code goes into an infinite loop, eventually leading to StackOverflowError: Exception in thread "AWT-EventQueue-0" java.lang.StackOverflowError at java.awt.Component.repaint(Unknown Source) at java.awt.Component.repaint(Unknown Source) at org.apache.pivot.wtk.ApplicationContext$DisplayHost.repaint(ApplicationContext.java:414) at org.apache.pivot.wtk.Display.repaint(Display.java:97) at org.apache.pivot.wtk.Component.repaint(Component.java:2041) at org.apache.pivot.wtk.Component.repaint(Component.java:2041) at org.apache.pivot.wtk.Component.repaint(Component.java:2041) at org.apache.pivot.wtk.Component.repaint(Component.java:2041) at org.apache.pivot.wtk.Component.repaint(Component.java:2041) at org.apache.pivot.wtk.Component.repaint(Component.java:2041) at org.apache.pivot.wtk.Component.repaint(Component.java:2041) at org.apache.pivot.wtk.Component.repaint(Component.java:2041) at org.apache.pivot.wtk.Component.repaint(Component.java:2041) at org.apache.pivot.wtk.Viewport.repaint(Viewport.java:174) at org.apache.pivot.wtk.Component.repaint(Component.java:2000) at org.apache.pivot.wtk.Component.repaint(Component.java:1985) at org.apache.pivot.wtk.Component.setSize(Component.java:935) at org.apache.pivot.wtk.skin.ScrollPaneSkin.layoutHelper(ScrollPaneSkin.java:730) at org.apache.pivot.wtk.skin.ScrollPaneSkin.layout(ScrollPaneSkin.java:585) at org.apache.pivot.wtk.Component.layout(Component.java:1960) at org.apache.pivot.wtk.Container.layout(Container.java:348) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Component.scrollAreaToVisible(Component.java:1831) at org.apache.pivot.wtk.skin.TextAreaSkin.scrollCharacterToVisible(TextAreaSkin.java:462) at org.apache.pivot.wtk.skin.TextAreaSkin.layout(TextAreaSkin.java:238) at org.apache.pivot.wtk.Component.layout(Component.java:1960) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Component.scrollAreaToVisible(Component.java:1831) at org.apache.pivot.wtk.skin.TextAreaSkin.scrollCharacterToVisible(TextAreaSkin.java:462) at org.apache.pivot.wtk.skin.TextAreaSkin.layout(TextAreaSkin.java:238) at org.apache.pivot.wtk.Component.layout(Component.java:1960) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) at org.apache.pivot.wtk.Container.layout(Container.java:352) at org.apache.pivot.wtk.Component.validate(Component.java:1951) > Exceptions thrown when calling getCharacterBounds of TextArea when incomplete > lines exist > ----------------------------------------------------------------------------------------- > > Key: PIVOT-772 > URL: https://issues.apache.org/jira/browse/PIVOT-772 > Project: Pivot > Issue Type: Bug > Components: wtk > Affects Versions: 2.0.1 > Environment: Windows XP SP3, JRE 1.6_25 or JRE 1.7 (beta) > Reporter: Roger Whitcomb > Assignee: Noel Grandin > Priority: Minor > Fix For: 2.0.1 > > Attachments: Scroll.java, Scroll2.java, scroll.bxml, scroll.log, > scroll2.log > > Original Estimate: 48h > Remaining Estimate: 48h > > If partial lines are appended to a TextArea and then "getCharacterBounds" > followed by "scrollAreaToVisible" is called, Pivot throws > java.lang.IndexOutOfBoundsException from > TextAreaSkinParagraphView.getCharacterBounds: > java.lang.IndexOutOfBoundsException: ix = 38 > at sun.font.StandardGlyphVector.getGlyphLogicalBounds(Unknown Source) > at > org.apache.pivot.wtk.skin.TextAreaSkinParagraphView.getCharacterBounds(TextAreaSkinParagraphView.java:393) > at > org.apache.pivot.wtk.skin.TextAreaSkin.getCharacterBounds(TextAreaSkin.java:442) > at > org.apache.pivot.wtk.TextArea.getCharacterBounds(TextArea.java:1243) -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira