Fix recursive static field lookup.

Change-Id: I892696e6e98be9f31a7900d10130cae204f9127a
diff --git a/src/class_linker.cc b/src/class_linker.cc
index 4133a86..5439489 100644
--- a/src/class_linker.cc
+++ b/src/class_linker.cc
@@ -386,11 +386,11 @@
 
   // Sanity check Class[] and Object[]'s interfaces
   ClassHelper kh(class_array_class.get(), this);
-  CHECK_EQ(java_lang_Cloneable, kh.GetInterface(0));
-  CHECK_EQ(java_io_Serializable, kh.GetInterface(1));
+  CHECK_EQ(java_lang_Cloneable, kh.GetDirectInterface(0));
+  CHECK_EQ(java_io_Serializable, kh.GetDirectInterface(1));
   kh.ChangeClass(object_array_class.get());
-  CHECK_EQ(java_lang_Cloneable, kh.GetInterface(0));
-  CHECK_EQ(java_io_Serializable, kh.GetInterface(1));
+  CHECK_EQ(java_lang_Cloneable, kh.GetDirectInterface(0));
+  CHECK_EQ(java_io_Serializable, kh.GetDirectInterface(1));
   // run Class, Constructor, Field, and Method through FindSystemClass.
   // this initializes their dex_cache_ fields and register them in classes_.
   Class* Class_class = FindSystemClass("Ljava/lang/Class;");
@@ -2889,10 +2889,10 @@
   }
   size_t ifcount = super_ifcount;
   ClassHelper kh(klass.get(), this);
-  uint32_t num_interfaces = interfaces == NULL ? kh.NumInterfaces() : interfaces->GetLength();
+  uint32_t num_interfaces = interfaces == NULL ? kh.NumDirectInterfaces() : interfaces->GetLength();
   ifcount += num_interfaces;
   for (size_t i = 0; i < num_interfaces; i++) {
-    Class* interface = interfaces == NULL ? kh.GetInterface(i) : interfaces->Get(i);
+    Class* interface = interfaces == NULL ? kh.GetDirectInterface(i) : interfaces->Get(i);
     ifcount += interface->GetIfTableCount();
   }
   if (ifcount == 0) {
@@ -2912,7 +2912,7 @@
   // Flatten the interface inheritance hierarchy.
   size_t idx = super_ifcount;
   for (size_t i = 0; i < num_interfaces; i++) {
-    Class* interface = interfaces == NULL ? kh.GetInterface(i) : interfaces->Get(i);
+    Class* interface = interfaces == NULL ? kh.GetDirectInterface(i) : interfaces->Get(i);
     DCHECK(interface != NULL);
     if (!interface->IsInterface()) {
       ClassHelper ih(interface);