Ah ok. Sorry, I only saw the code fragment in the email...

On Monday, August 10, 2015, Gary Gregory <[email protected]> wrote:

> Let's walk through it.
>
> First, obj is final and:
>
>         if (obj == null) {
>             return false;
>         }
>
> After that obj is _never_ null. Then. later:
>
>         final ThreadContextStack other = (ThreadContextStack) obj;
>
> So other is _never_ null, then finally:
>
>         return other == null;
>
> which is never true, hence return false;
>
> Check?
>
> Gary
>
>
> On Sun, Aug 9, 2015 at 7:59 PM, Remko Popma <[email protected]
> <javascript:_e(%7B%7D,'cvml','[email protected]');>> wrote:
>
>> Hang on, this changes the semantics!
>> If value is null and other is null we want to return true, not false.
>>
>> Sent from my iPhone
>>
>> > On 2015/08/10, at 11:16, [email protected]
>> <javascript:_e(%7B%7D,'cvml','[email protected]');> wrote:
>> >
>> > Repository: logging-log4j2
>> > Updated Branches:
>> >  refs/heads/master 3eeb2f6c9 -> cbab41909
>> >
>> >
>> > Null comparison always yields false, so return false.
>> >
>> >
>> > Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
>> > Commit:
>> http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/cbab4190
>> > Tree:
>> http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/cbab4190
>> > Diff:
>> http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/cbab4190
>> >
>> > Branch: refs/heads/master
>> > Commit: cbab4190931af2f28935fd7b3503e2c78efaed79
>> > Parents: 3eeb2f6
>> > Author: ggregory <[email protected]
>> <javascript:_e(%7B%7D,'cvml','[email protected]');>>
>> > Authored: Sun Aug 9 19:15:59 2015 -0700
>> > Committer: ggregory <[email protected]
>> <javascript:_e(%7B%7D,'cvml','[email protected]');>>
>> > Committed: Sun Aug 9 19:15:59 2015 -0700
>> >
>> > ----------------------------------------------------------------------
>> > .../org/apache/logging/log4j/spi/DefaultThreadContextStack.java    | 2
>> +-
>> > 1 file changed, 1 insertion(+), 1 deletion(-)
>> > ----------------------------------------------------------------------
>> >
>> >
>> >
>> http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/cbab4190/log4j-api/src/main/java/org/apache/logging/log4j/spi/DefaultThreadContextStack.java
>> > ----------------------------------------------------------------------
>> > diff --git
>> a/log4j-api/src/main/java/org/apache/logging/log4j/spi/DefaultThreadContextStack.java
>> b/log4j-api/src/main/java/org/apache/logging/log4j/spi/DefaultThreadContextStack.java
>> > index 12229ca..5e2921b 100644
>> > ---
>> a/log4j-api/src/main/java/org/apache/logging/log4j/spi/DefaultThreadContextStack.java
>> > +++
>> b/log4j-api/src/main/java/org/apache/logging/log4j/spi/DefaultThreadContextStack.java
>> > @@ -128,7 +128,7 @@ public class DefaultThreadContextStack implements
>> ThreadContextStack {
>> >         final ThreadContextStack other = (ThreadContextStack) obj;
>> >         final MutableThreadContextStack values = stack.get();
>> >         if (values == null) {
>> > -            return other == null;
>> > +            return false;
>> >         }
>> >         return values.equals(other);
>> >     }
>> >
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [email protected]
>> <javascript:_e(%7B%7D,'cvml','[email protected]');>
>> For additional commands, e-mail: [email protected]
>> <javascript:_e(%7B%7D,'cvml','[email protected]');>
>>
>>
>
>
> --
> E-Mail: [email protected]
> <javascript:_e(%7B%7D,'cvml','[email protected]');> | [email protected]
> <javascript:_e(%7B%7D,'cvml','[email protected]');>
> Java Persistence with Hibernate, Second Edition
> <http://www.manning.com/bauer3/>
> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
> Spring Batch in Action <http://www.manning.com/templier/>
> Blog: http://garygregory.wordpress.com
> Home: http://garygregory.com/
> Tweet! http://twitter.com/GaryGregory
>

Reply via email to