ToStringStyle.registry ThreadLocal initialValue should return a Set that 
implements reference equality checking instead of object equality
------------------------------------------------------------------------------------------------------------------------------------------

                 Key: LANG-544
                 URL: https://issues.apache.org/jira/browse/LANG-544
             Project: Commons Lang
          Issue Type: Bug
    Affects Versions: 2.4
            Reporter: Michael Richards


ToStringStyle.registry ThreadLocal initialValue should return a Set that 
implements reference equality checking instead of object equality.

This change would still protect against cyclical object graphs, but also 
protect against the following conditions:
* Incorrect implementations of hashCode/equals for any objects in the object 
graph
* Unintended side effects of the hashCode/equals methods for any objects in the 
object graph

Unfortunately, Java versions prior to 1.6 do not provide a simple built-in 
mechanism to create such a Set.  This issue is discussed here in detail:
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4479578

A possible work-around is to use an IdentityHashMap instead of a Set.  This 
class is available in Java 1.4 and later.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to