summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/dalvik_system_VMStack.cc2
-rw-r--r--test/045-reflect-array/src/Main.java4
2 files changed, 3 insertions, 3 deletions
diff --git a/src/dalvik_system_VMStack.cc b/src/dalvik_system_VMStack.cc
index 682aed9963..fd2af393e9 100644
--- a/src/dalvik_system_VMStack.cc
+++ b/src/dalvik_system_VMStack.cc
@@ -60,7 +60,7 @@ jobject VMStack_getClosestUserClassLoader(JNIEnv* env, jclass, jobject javaBoots
for (Frame frame = self->GetTopOfStack(); frame.HasNext(); frame.Next()) {
Class* c = frame.GetMethod()->GetDeclaringClass();
Object* cl = c->GetClassLoader();
- if (cl != bootstrap && cl != system) {
+ if (cl != NULL && cl != bootstrap && cl != system) {
return AddLocalReference<jobject>(env, cl);
}
}
diff --git a/test/045-reflect-array/src/Main.java b/test/045-reflect-array/src/Main.java
index 36f8ac3882..05cf84302a 100644
--- a/test/045-reflect-array/src/Main.java
+++ b/test/045-reflect-array/src/Main.java
@@ -101,7 +101,7 @@ public class Main {
throw new RuntimeException("load should have worked");
}
} catch (IllegalArgumentException iae) {
- System.err.println("Couldn't Array.getInt(charArray)");
+ iae.printStackTrace();
}
try {
Array.getByte(charArray, 2);
@@ -115,7 +115,7 @@ public class Main {
+ Array.getInt(charArray, 3));
}
} catch (IllegalArgumentException iae) {
- System.err.println("Couldn't Array.getInt(charArray)");
+ iae.printStackTrace();
}
System.out.println("ReflectArrayTest.testSingleChar passed");