On 4/10/2013 1:35 PM, Mike Duigou wrote:
Hello all;

This is a changeset which improves the consistency of several Map.merge 
implementations for handling of null values.

It isn't at all clear to me what specification you are using to define the expected behaviour here. I would have thought that anyone supplying a remapping function needs to be aware of whether the target map supports nulls or not, and that the remapping function should then do the right thing if null is encountered. Instead you are making the decision to bypass the remapping function if you encounter a null.

David

The existing unit tests hadn't considered several cases where the result of the 
remapper was not the same as the value. I've restructured the merge tests to be 
more thorough and systematic this revealed a couple of problems.

http://cr.openjdk.java.net/~mduigou/JDK-8024688/0/webrev/

Like several of the previous patches, this one introduces an alternative 
default for ConcurrentMap to work around issues involving null values where the 
handling in the general Map default would be incorrect.

Mike

Reply via email to