Skip to content

Commit 2a68c26

Browse files
committed
Fix invalid read in tests
1 parent e638dae commit 2a68c26

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

test/high_level.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -678,7 +678,7 @@ int main()
678678
assert(reinterpret_cast<jobject (*)(JNIEnv*, jobject, jobject)>(objectObject.fnPtr)(&env, nullptr, nullptr) == nullptr);
679679

680680

681-
static const char* lastExceptionMessage = nullptr;
681+
static std::string lastExceptionMessage;
682682
static Testable<jni::jclass> errorClassValue;
683683

684684
env.fns->FindClass = [] (JNIEnv*, const char* name) -> jclass
@@ -695,17 +695,17 @@ int main()
695695
};
696696

697697
auto throwsException = jni::MakeNativeMethod("throwsException", [] (JNIEnv&, ObjectOrClass) { throw std::runtime_error("test"); });
698-
lastExceptionMessage = nullptr;
698+
lastExceptionMessage.clear();
699699
reinterpret_cast<void (*)(JNIEnv*, jobject)>(throwsException.fnPtr)(&env, nullptr);
700700
assert(lastExceptionMessage == std::string("test"));
701701

702702
auto throwsUnknown = jni::MakeNativeMethod("throwsUnknown", [] (JNIEnv&, ObjectOrClass) { throw Test(); });
703-
lastExceptionMessage = nullptr;
703+
lastExceptionMessage.clear();
704704
reinterpret_cast<void (*)(JNIEnv*, jobject)>(throwsUnknown.fnPtr)(&env, nullptr);
705705
assert(lastExceptionMessage == std::string("unknown native exception"));
706706

707707
auto javaException = jni::MakeNativeMethod("javaException", [] (JNIEnv&, ObjectOrClass) { jni::ThrowNew(env, jni::FindClass(env, "java/lang/Error"), "Java exception"); });
708-
lastExceptionMessage = nullptr;
708+
lastExceptionMessage.clear();
709709
reinterpret_cast<void (*)(JNIEnv*, jobject)>(javaException.fnPtr)(&env, nullptr);
710710
assert(lastExceptionMessage == std::string("Java exception"));
711711
};

0 commit comments

Comments
 (0)