From c8c3a6965c5a1a01951452a25291e5a5944fa59a Mon Sep 17 00:00:00 2001 From: Jesse Wilson Date: Mon, 1 Nov 2010 22:46:20 +0000 Subject: [PATCH] Fix a regression that expects different type adapters for long.class and Long.class. This is a temporary fix; later we may want to always use the canonical wrapped class. --- gson/src/main/java/com/google/gson/Gson.java | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/gson/src/main/java/com/google/gson/Gson.java b/gson/src/main/java/com/google/gson/Gson.java index 0cb3660e..68f428e6 100644 --- a/gson/src/main/java/com/google/gson/Gson.java +++ b/gson/src/main/java/com/google/gson/Gson.java @@ -392,9 +392,8 @@ public final class Gson { */ @SuppressWarnings("unchecked") public T fromJson(String json, Class classOfT) throws JsonParseException { - Class wrapped = Primitives.wrap(classOfT); - Object object = fromJson(json, (Type) wrapped); - return wrapped.cast(object); + Object object = fromJson(json, (Type) classOfT); + return Primitives.wrap(classOfT).cast(object); } /** @@ -443,9 +442,8 @@ public final class Gson { * @since 1.2 */ public T fromJson(Reader json, Class classOfT) throws JsonParseException { - Class wrapped = Primitives.wrap(classOfT); - Object object = fromJson(new JsonReader(json), wrapped); - return wrapped.cast(object); + Object object = fromJson(new JsonReader(json), classOfT); + return Primitives.wrap(classOfT).cast(object); } /** @@ -503,9 +501,8 @@ public final class Gson { * @since 1.3 */ public T fromJson(JsonElement json, Class classOfT) throws JsonParseException { - Class wrapped = Primitives.wrap(classOfT); - Object object = fromJson(json, (Type) wrapped); - return wrapped.cast(object); + Object object = fromJson(json, (Type) classOfT); + return Primitives.wrap(classOfT).cast(object); } /**