From d627112da0a623d151cdd1e552f241b3ef032473 Mon Sep 17 00:00:00 2001 From: Volker Birk Date: Thu, 25 Oct 2018 14:49:13 +0200 Subject: [PATCH] cleanup --- src/org_pEp_jniadapter_AbstractEngine.cc | 22 +++++----------------- 1 file changed, 5 insertions(+), 17 deletions(-) diff --git a/src/org_pEp_jniadapter_AbstractEngine.cc b/src/org_pEp_jniadapter_AbstractEngine.cc index 04b4309..4164b5f 100644 --- a/src/org_pEp_jniadapter_AbstractEngine.cc +++ b/src/org_pEp_jniadapter_AbstractEngine.cc @@ -17,6 +17,7 @@ namespace pEp { using namespace pEp::Adapter; using namespace utility; + JavaVM *jvm= nullptr; thread_local JNIEnv* thread_env = nullptr; jobject obj = nullptr; jclass _clazz = nullptr; @@ -32,28 +33,14 @@ namespace pEp { jmethodID needsFastPollMethodID = nullptr; class JNISync { - JavaVM * _jvm; - public: - JNISync() - : _jvm(nullptr) { } - - ~JNISync() { } - - JavaVM * jvm() - { - if (!_jvm) - env()->GetJavaVM(&_jvm); - return _jvm; - } - JNIEnv * env() { if (!thread_env) { #ifdef ANDROID - jvm()->AttachCurrentThread(&thread_env, nullptr); + jvm->AttachCurrentThread(&thread_env, nullptr); #else - jvm()->AttachCurrentThread((void **) &thread_env, nullptr); + jvm->AttachCurrentThread((void **) &thread_env, nullptr); #endif } return thread_env; @@ -77,7 +64,7 @@ namespace pEp { void shutdown_sync() { env()->DeleteLocalRef(messageClass); - jvm()->DetachCurrentThread(); + jvm->DetachCurrentThread(); } }; @@ -141,6 +128,7 @@ extern "C" { jobject me ) { + env->GetJavaVM(&jvm); thread_env = env; obj = me; _clazz = env->GetObjectClass(obj);