From dda097947f05e685ec1b2054bc3de9b13686e0a1 Mon Sep 17 00:00:00 2001 From: Ben Gruver Date: Wed, 17 Apr 2013 00:12:20 -0700 Subject: [PATCH] Fix implementation of equals for BaseTypeReference This fixes the implementation so it matches what is described in the documentation for the TypeReference interface. Specifically, it allows for comparison to a CharSequence --- .../org/jf/dexlib2/base/reference/BaseTypeReference.java | 9 +++++++-- .../org/jf/dexlib2/iface/reference/TypeReference.java | 2 +- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/dexlib2/src/main/java/org/jf/dexlib2/base/reference/BaseTypeReference.java b/dexlib2/src/main/java/org/jf/dexlib2/base/reference/BaseTypeReference.java index 22cb0e78..4b24d071 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/base/reference/BaseTypeReference.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/base/reference/BaseTypeReference.java @@ -43,8 +43,13 @@ public abstract class BaseTypeReference implements TypeReference { @Override public boolean equals(Object o) { - if (o != null && o instanceof TypeReference) { - return getType().equals(((TypeReference)o).getType()); + if (o != null) { + if (o instanceof TypeReference) { + return getType().equals(((TypeReference)o).getType()); + } + if (o instanceof CharSequence) { + return getType().equals(o.toString()); + } } return false; } diff --git a/dexlib2/src/main/java/org/jf/dexlib2/iface/reference/TypeReference.java b/dexlib2/src/main/java/org/jf/dexlib2/iface/reference/TypeReference.java index 4c2249e4..e7c77c2e 100644 --- a/dexlib2/src/main/java/org/jf/dexlib2/iface/reference/TypeReference.java +++ b/dexlib2/src/main/java/org/jf/dexlib2/iface/reference/TypeReference.java @@ -69,7 +69,7 @@ public interface TypeReference extends Reference, CharSequence, Comparable