On Fri, Feb 10, 2012 at 11:41 AM, Stefan Guggisberg
<[email protected]> wrote:
> On Thu, Feb 9, 2012 at 11:45 PM, Michael Dürig <[email protected]> wrote:
>>
>> Hi,
>>
>> I stumbled upon this by chance: The equals method for the classes
>> ChildNodeEntriesMap and ChildNodeEntry is not symmetric.
>
> hmm, i am pretty sure they're symmetric, i.e.: a.equals(b) == b.equals(a)

They look symmetric to me as well. Unless you refer to the Bucket innerclass

ChildNodeEntriesMap#Bucket : This one has an invalid equals method
breaking symmetry : Using super.equals in an equals implementation
almost always breaks symmetry

Regards Ard

>
> or are you referring to the missing hashCode() override?
> i admit that i've been lazy since those internal objects are not
> intended to be used as keys for hash tables and sorts.
>
> but you're probably right, it doesn't hurt to implement them :)
>
> cheers
> stefan
>
>> This will most
>> certainly lead to subtle bugs later on.
>>
>> Michael



-- 
Amsterdam - Oosteinde 11, 1017 WT Amsterdam
Boston - 1 Broadway, Cambridge, MA 02142

US +1 877 414 4776 (toll free)
Europe +31(0)20 522 4466
www.onehippo.com

Reply via email to