Fix IncompatibleClassChangeError.

Before, we'd hit the end of FindClass and blow up because we don't expect a
pending exception.

Change-Id: Ia3ca89d2460782275c5217c31ce3b057d12d4fa6
diff --git a/src/class_linker.cc b/src/class_linker.cc
index c7006df..7225764 100644
--- a/src/class_linker.cc
+++ b/src/class_linker.cc
@@ -871,8 +871,8 @@
     return NULL;
   }
   // Return the loaded class.  No exceptions should be pending.
-  CHECK(klass->IsResolved());
-  CHECK(!self->IsExceptionPending());
+  CHECK(klass->IsResolved()) << descriptor;
+  CHECK(!self->IsExceptionPending()) << descriptor << " " << PrettyTypeOf(self->GetException());
   return klass;
 }
 
@@ -1848,13 +1848,10 @@
       klass->GetVirtualMethodDuringLinking(i)->SetMethodIndex(i);
     }
     // Link interface method tables
-    LinkInterfaceMethods(klass);
+    return LinkInterfaceMethods(klass);
   } else {
-    // Link virtual method tables
-    LinkVirtualMethods(klass);
-
-    // Link interface method tables
-    LinkInterfaceMethods(klass);
+    // Link virtual and interface method tables
+    return LinkVirtualMethods(klass) && LinkInterfaceMethods(klass);
   }
   return true;
 }