# HG changeset patch # User Doug Simon # Date 1416089998 -3600 # Node ID 322d928a373e31b463917646b05155a446136cd7 # Parent 53bd207921276e14935aa5b01a8c9b50cd643b54 fixed findbug's issue diff -r 53bd20792127 -r 322d928a373e graal/com.oracle.graal.compiler.common/src/com/oracle/graal/compiler/common/remote/LinkedIdentityHashMap.java --- a/graal/com.oracle.graal.compiler.common/src/com/oracle/graal/compiler/common/remote/LinkedIdentityHashMap.java Sat Nov 15 16:39:23 2014 +0100 +++ b/graal/com.oracle.graal.compiler.common/src/com/oracle/graal/compiler/common/remote/LinkedIdentityHashMap.java Sat Nov 15 23:19:58 2014 +0100 @@ -52,7 +52,7 @@ * Wrapper for an object that gives uses the object's identity for the purpose of equality * comparisons and computing a hash code. */ - public static class Id { + static final class Id { final T object; public Id(T object) { @@ -63,7 +63,7 @@ @SuppressWarnings("unchecked") @Override public boolean equals(Object obj) { - return ((Id) obj).object == object; + return obj instanceof Id && ((Id) obj).object == object; } @Override @@ -110,7 +110,10 @@ @SuppressWarnings("unchecked") public void putAll(Map m) { - if (m != null && m.getClass() == getClass()) { + if (m == null) { + throw new NullPointerException(); + } + if (m.getClass() == getClass()) { LinkedIdentityHashMap that = (LinkedIdentityHashMap) m; map.putAll(that.map);