[ 
https://issues.apache.org/jira/browse/GROOVY-3250?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Milles updated GROOVY-3250:
--------------------------------
    Labels: StackOverflowError  (was: )

> StackOverflowError in List and Map formatting
> ---------------------------------------------
>
>                 Key: GROOVY-3250
>                 URL: https://issues.apache.org/jira/browse/GROOVY-3250
>             Project: Groovy
>          Issue Type: Bug
>          Components: groovy-jdk
>    Affects Versions: 1.5.7
>         Environment: Groovy 1.5.7 and 1.6-RC1
>            Reporter: Alexander Veit
>            Priority: Major
>              Labels: StackOverflowError
>
> If a List or Map that contains itself is formatted for output (print, 
> inspect,...) a StackOverflowError occurs.
> {code}
> import org.codehaus.groovy.runtime.InvokerHelper
> def x
> // List (simple case)
> x = []
> x << x
> assert "[(this Collection)]" == x.toString()
> InvokerHelper.toListString(x)
> // List (nested case)
> x = []
> x << [x]
> assert InvokerHelper.toListString(x)
> // Map (simple case)
> x = [:]
> x.put("self", x)
> assert "[self:this Map_]" == InvokerHelper.toMapString(x) // JDK uses "(this 
> Map)"
> // Map (nested case)
> x = [:]
> x.put("nested", ["self":x])
> assert InvokerHelper.toMapString(x)
> // there are also List/Map mixed cases
> // ...
> {code}
> See also GROOVY-1106.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to