summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorJean Chalard <jchalard@google.com>2014-10-06 22:50:20 +0900
committerJean Chalard <jchalard@google.com>2014-10-06 23:15:22 +0900
commitb498d2cf84942bcb697928b0e6176c5a03d31dbc (patch)
treecd4e1f145b31171a12a83334884415313f1693b1 /tools
parent82065e36ec07e5ca18831a7428bc9b0c021fc47d (diff)
downloadandroid_packages_inputmethods_LatinIME-b498d2cf84942bcb697928b0e6176c5a03d31dbc.tar.gz
android_packages_inputmethods_LatinIME-b498d2cf84942bcb697928b0e6176c5a03d31dbc.tar.bz2
android_packages_inputmethods_LatinIME-b498d2cf84942bcb697928b0e6176c5a03d31dbc.zip
Fix a possible NPE in Dicttool
I've never seen the NPE happen and only happened to notice this by chance. Let's fix the code. Change-Id: If458646229f9cadcd6c15779348133f382fde783
Diffstat (limited to 'tools')
-rw-r--r--tools/dicttool/compat/android/util/Pair.java7
1 files changed, 4 insertions, 3 deletions
diff --git a/tools/dicttool/compat/android/util/Pair.java b/tools/dicttool/compat/android/util/Pair.java
index 5bf34848d..ab6096ee3 100644
--- a/tools/dicttool/compat/android/util/Pair.java
+++ b/tools/dicttool/compat/android/util/Pair.java
@@ -17,6 +17,7 @@
package android.util;
import java.util.Arrays;
+import java.util.Objects;
public class Pair<T1, T2> {
public final T1 mFirst;
@@ -29,7 +30,8 @@ public class Pair<T1, T2> {
@Override
public int hashCode() {
- return Arrays.hashCode(new Object[] { mFirst, mSecond });
+ return (mFirst == null ? 0 : mFirst.hashCode())
+ ^ (mSecond == null ? 0 : mSecond.hashCode());
}
@Override
@@ -37,7 +39,6 @@ public class Pair<T1, T2> {
if (o == this) return true;
if (!(o instanceof Pair)) return false;
Pair<?, ?> p = (Pair<?, ?>)o;
- return ((mFirst == null && p.mFirst == null) || mFirst.equals(p.mFirst))
- && ((mSecond == null && p.mSecond == null) || mSecond.equals(p.mSecond));
+ return Objects.equals(mFirst, p.mFirst) && Objects.equals(mSecond, p.mSecond);
}
}