diff --git a/gson/src/main/java/com/google/gson/internal/bind/ReflectiveTypeAdapter.java b/gson/src/main/java/com/google/gson/internal/bind/ReflectiveTypeAdapter.java index 351ea4d9..a036b357 100644 --- a/gson/src/main/java/com/google/gson/internal/bind/ReflectiveTypeAdapter.java +++ b/gson/src/main/java/com/google/gson/internal/bind/ReflectiveTypeAdapter.java @@ -166,6 +166,10 @@ public final class ReflectiveTypeAdapter extends TypeAdapter { private Map getBoundFields( MiniGson context, TypeToken type, Class raw) { Map result = new LinkedHashMap(); + if (raw.isInterface()) { + return result; + } + Type declaredType = type.getType(); while (raw != Object.class) { Field[] fields = raw.getDeclaredFields();