[prev in list] [next in list] [prev in thread] [next in thread] 

List:       jakarta-commons-dev
Subject:    [jira] Commented: (LANG-69) [lang] ToStringBuilder throws
From:       "Gary Gregory (JIRA)" <jira () apache ! org>
Date:       2006-09-29 19:57:21
Message-ID: 19117413.1159559841295.JavaMail.root () brutus
[Download RAW message or body]

    [ http://issues.apache.org/jira/browse/LANG-69?page=comments#action_12438787 ] 
            
Gary Gregory commented on LANG-69:
----------------------------------

Fix already in CVS. 
Please see HashCodeBuilderTest#testReflectionObjectCycle().

> [lang] ToStringBuilder throws StackOverflowError when an Object cycle exists
> ----------------------------------------------------------------------------
> 
> Key: LANG-69
> URL: http://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: \
                http://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


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic