Fixed issue 126 by ensuring that parameterized type deduction is not done for transient fields.
diff --git a/gson/src/main/java/com/google/gson/ObjectNavigator.java b/gson/src/main/java/com/google/gson/ObjectNavigator.java
index fccafe8..dd08a2b 100644
--- a/gson/src/main/java/com/google/gson/ObjectNavigator.java
+++ b/gson/src/main/java/com/google/gson/ObjectNavigator.java
@@ -133,11 +133,11 @@
     Field[] fields = clazz.getDeclaredFields();
     AccessibleObject.setAccessible(fields, true);
     for (Field f : fields) {
-      TypeInfo fieldTypeInfo = TypeInfoFactory.getTypeInfoForField(f, objType);
-      Type actualTypeOfField = fieldTypeInfo.getActualType();
       if (exclusionStrategy.shouldSkipField(f)) {
         continue; // skip
       } else {
+        TypeInfo fieldTypeInfo = TypeInfoFactory.getTypeInfoForField(f, objType);
+        Type actualTypeOfField = fieldTypeInfo.getActualType();
         boolean visitedWithCustomHandler = 
           visitor.visitFieldUsingCustomHandler(f, actualTypeOfField, obj);
         if (!visitedWithCustomHandler) {
diff --git a/gson/src/test/java/com/google/gson/common/TestTypes.java b/gson/src/test/java/com/google/gson/common/TestTypes.java
index 38d37b4..808f3e0 100644
--- a/gson/src/test/java/com/google/gson/common/TestTypes.java
+++ b/gson/src/test/java/com/google/gson/common/TestTypes.java
@@ -219,7 +219,8 @@
     }
   }
 
-  public static class ClassWithTransientFields {
+  public static class ClassWithTransientFields<T> {
+    public transient T transientT; 
     public final transient long transientLongValue;
     private final long[] longValue;