You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by "Henri Yandell (JIRA)" <ji...@apache.org> on 2007/01/17 05:10:27 UTC
[jira] Commented: (LANG-69) [lang] ToStringBuilder throws
StackOverflowError when an Object cycle exists
[ https://issues.apache.org/jira/browse/LANG-69?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12465353 ]
Henri Yandell commented on LANG-69:
-----------------------------------
Unit test is already in the relevant Test file (just commented out). So no need to apply that patch.
> [lang] ToStringBuilder throws StackOverflowError when an Object cycle exists
> ----------------------------------------------------------------------------
>
> Key: LANG-69
> URL: https://issues.apache.org/jira/browse/LANG-69
> Project: Commons Lang
> Issue Type: Bug
> Affects Versions: 2.1
> Environment: Operating System: other
> Platform: Other
> Reporter: Maarten Coene
> Assigned To: Gary Gregory
> Fix For: 2.3
>
> Attachments: 15938.patch, 36061.patch, ReflectionToStringBuilder.java.patch, ToStringBuilderTest.java.patch, ToStringStyle.java.patch
>
>
> Hi,
> The ToStringBuilder throws a StackOverflowError if you have a cycle in the
> object graph. For instance, the following toString() method will cause a
> StackOverflowError:
> public class ObjectCycle {
> Object obj;
>
> public String toString() {
> return new ToStringBuilder(this).append(obj).toString();
> }
> }
> public void testObjectCycle() {
> ObjectCycle a = new ObjectCycle();
> ObjectCycle b = new ObjectCycle();
> a.obj = b;
> b.obj = a;
> a.toString(); // ouch: StackOverflowError
> }
> I'll submit some patches that fixes this problem...
> regards,
> Maarten
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org