Move InitClassLoader from JNI_OnLoad to InitGlobalJniVariables.
This fixes clients with custom JNI_OnLoad code.
Bug: webrtc:8278
Change-Id: I67b45c2ca07b13b0bf968c5ac17ec6f1bcc58a86
Reviewed-on: https://webrtc-review.googlesource.com/21281
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20629}
diff --git a/sdk/android/src/jni/jni_helpers.cc b/sdk/android/src/jni/jni_helpers.cc
index 4c3724f..f55cd1b 100644
--- a/sdk/android/src/jni/jni_helpers.cc
+++ b/sdk/android/src/jni/jni_helpers.cc
@@ -15,6 +15,7 @@
#include <unistd.h>
#include <vector>
+#include "sdk/android/src/jni/class_loader.h"
#include "sdk/android/src/jni/classreferenceholder.h"
namespace webrtc {
@@ -78,6 +79,8 @@
if (jvm->GetEnv(reinterpret_cast<void**>(&jni), JNI_VERSION_1_6) != JNI_OK)
return -1;
+ InitClassLoader(jni);
+
return JNI_VERSION_1_6;
}
diff --git a/sdk/android/src/jni/jni_onload.cc b/sdk/android/src/jni/jni_onload.cc
index cb708e7..d70d7b8 100644
--- a/sdk/android/src/jni/jni_onload.cc
+++ b/sdk/android/src/jni/jni_onload.cc
@@ -28,8 +28,6 @@
RTC_CHECK(rtc::InitializeSSL()) << "Failed to InitializeSSL()";
LoadGlobalClassReferenceHolder();
- JNIEnv* env = AttachCurrentThreadIfNeeded();
- InitClassLoader(env);
return ret;
}