[
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