[ 
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

        

Reply via email to