| Index: components/cronet/android/cronet_library_loader.cc
|
| diff --git a/components/cronet/android/cronet_library_loader.cc b/components/cronet/android/cronet_library_loader.cc
|
| index 607df9cac398744d0984a782d254439432a58984..4f6d91d7fc2cda5cd7b76eafc9fe1b66006af95e 100644
|
| --- a/components/cronet/android/cronet_library_loader.cc
|
| +++ b/components/cronet/android/cronet_library_loader.cc
|
| @@ -58,12 +58,15 @@ base::MessageLoop* g_main_message_loop = nullptr;
|
|
|
| net::NetworkChangeNotifier* g_network_change_notifier = nullptr;
|
|
|
| -bool RegisterJNI(JNIEnv* env) {
|
| +bool RegisterJNI() {
|
| + JNIEnv* env = base::android::AttachCurrentThread();
|
| return base::android::RegisterNativeMethods(
|
| env, kCronetRegisteredMethods, arraysize(kCronetRegisteredMethods));
|
| }
|
|
|
| -bool Init() {
|
| +bool NativeInit() {
|
| + if (!base::android::OnJNIOnLoadInit())
|
| + return false;
|
| url::Initialize();
|
| return true;
|
| }
|
| @@ -72,12 +75,8 @@ bool Init() {
|
|
|
| // Checks the available version of JNI. Also, caches Java reflection artifacts.
|
| jint CronetOnLoad(JavaVM* vm, void* reserved) {
|
| - std::vector<base::android::RegisterCallback> register_callbacks;
|
| - register_callbacks.push_back(base::Bind(&RegisterJNI));
|
| - std::vector<base::android::InitCallback> init_callbacks;
|
| - init_callbacks.push_back(base::Bind(&Init));
|
| - if (!base::android::OnJNIOnLoadRegisterJNI(vm, register_callbacks) ||
|
| - !base::android::OnJNIOnLoadInit(init_callbacks)) {
|
| + if (!base::android::OnJNIOnLoadRegisterJNI(vm) || !RegisterJNI() ||
|
| + !NativeInit()) {
|
| return -1;
|
| }
|
| return JNI_VERSION_1_6;
|
|
|