Make ResolveField not rely on Field::GetType resolution

Change-Id: I10f4a874809ac9db2cd54e200cf10eb7c8979fce
diff --git a/src/check_jni.cc b/src/check_jni.cc
index c740291..15cc161 100644
--- a/src/check_jni.cc
+++ b/src/check_jni.cc
@@ -237,12 +237,12 @@
     if (f == NULL) {
       return;
     }
-    Class* f_type = f->GetType();
     // check invariant that all jfieldIDs have resolved types
-    DCHECK(f_type != NULL);
+    DCHECK(f->GetType() != NULL);
     Class* c = o->GetClass();
-    if (c->FindInstanceField(f->GetName()->ToModifiedUtf8(), f_type) == NULL) {
-      LOG(ERROR) << "JNI ERROR: jfieldID " << PrettyField(f) << " not valid for an object of class " << PrettyTypeOf(o);
+    if (c->FindInstanceField(f->GetName()->ToModifiedUtf8(), f->GetTypeDescriptor()) == NULL) {
+      LOG(ERROR) << "JNI ERROR: jfieldID " << PrettyField(f) 
+                 << " not valid for an object of class " << PrettyTypeOf(o);
       JniAbort();
     }
   }