summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2020-01-18 03:03:31 +0100
committerQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2020-01-18 03:03:31 +0100
commit81e5ba03ebac141a8588ca0f5f1b96576f789611 (patch)
tree6588fd39d61161756b281c61ca79560f1f83bda1
parente61c7485d7dc4c1d40a8f6f254568ad5278544e4 (diff)
parentcb74352f3ad9cac58a60c36513edbeb6c65c0562 (diff)
Merge remote-tracking branch 'origin/5.14' into 5.15
-rw-r--r--src/purchasing/inapppurchase/android/qandroidjni.cpp18
1 files changed, 13 insertions, 5 deletions
diff --git a/src/purchasing/inapppurchase/android/qandroidjni.cpp b/src/purchasing/inapppurchase/android/qandroidjni.cpp
index 3c4d700..d1f4920 100644
--- a/src/purchasing/inapppurchase/android/qandroidjni.cpp
+++ b/src/purchasing/inapppurchase/android/qandroidjni.cpp
@@ -119,15 +119,23 @@ static JNINativeMethod methods[] = {
{"purchaseFailed", "(JIILjava/lang/String;)V", (void *)purchaseFailed}
};
-jint JNICALL JNI_OnLoad(JavaVM *vm, void *)
+JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *)
{
+ static bool initialized = false;
+ if (initialized)
+ return JNI_VERSION_1_6;
+ initialized = true;
+
JNIEnv *env;
- if (vm->GetEnv(reinterpret_cast<void **>(&env), JNI_VERSION_1_4) != JNI_OK)
- return JNI_FALSE;
+ if (vm->GetEnv(reinterpret_cast<void **>(&env), JNI_VERSION_1_6) != JNI_OK)
+ return JNI_ERR;
jclass clazz = env->FindClass("org/qtproject/qt5/android/purchasing/QtInAppPurchase");
+ if (!clazz)
+ return JNI_ERR;
+
if (env->RegisterNatives(clazz, methods, sizeof(methods) / sizeof(methods[0])) < 0)
- return JNI_FALSE;
+ return JNI_ERR;
- return JNI_VERSION_1_4;
+ return JNI_VERSION_1_6;
}