Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2220)

Unified Diff: chrome/app/android/chrome_jni_onload.cc

Issue 2620303004: Remove JNI onload callback vector construction in favour of direct calls. (Closed)
Patch Set: Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/app/android/chrome_jni_onload.cc
diff --git a/chrome/app/android/chrome_jni_onload.cc b/chrome/app/android/chrome_jni_onload.cc
index 1b703f49693c48a5f349f61db71897a00b2829d0..0fbdd969bbd3ef6c4af6b4b2ddeb1bcf29b625c0 100644
--- a/chrome/app/android/chrome_jni_onload.cc
+++ b/chrome/app/android/chrome_jni_onload.cc
@@ -4,17 +4,19 @@
#include "chrome/app/android/chrome_jni_onload.h"
+#include "base/android/jni_android.h"
#include "base/android/library_loader/library_loader_hooks.h"
-#include "base/bind.h"
#include "chrome/app/android/chrome_android_initializer.h"
#include "chrome/browser/android/chrome_jni_registrar.h"
#include "content/public/app/content_jni_onload.h"
namespace android {
-namespace {
+bool OnJNIOnLoadRegisterJNI(JavaVM* vm) {
+ if (!content::android::OnJNIOnLoadRegisterJNI(vm))
+ return false;
-bool RegisterJNI(JNIEnv* env) {
+ JNIEnv* env = base::android::AttachCurrentThread();
if (base::android::GetLibraryProcessType(env) ==
base::android::PROCESS_BROWSER) {
return RegisterBrowserJNI(env);
@@ -22,26 +24,11 @@ bool RegisterJNI(JNIEnv* env) {
return true;
}
-bool Init() {
- return RunChrome();
-}
-
-} // namespace
+bool OnJNIOnLoadInit() {
+ if (!content::android::OnJNIOnLoadInit())
+ return false;
-bool OnJNIOnLoadRegisterJNI(
- JavaVM* vm,
- base::android::RegisterCallback callback) {
- std::vector<base::android::RegisterCallback> register_callbacks;
- register_callbacks.push_back(callback);
- register_callbacks.push_back(base::Bind(&RegisterJNI));
- return content::android::OnJNIOnLoadRegisterJNI(vm, register_callbacks);
-}
-
-bool OnJNIOnLoadInit(base::android::InitCallback callback) {
- std::vector<base::android::InitCallback> init_callbacks;
- init_callbacks.push_back(callback);
- init_callbacks.push_back(base::Bind(&Init));
- return content::android::OnJNIOnLoadInit(init_callbacks);
+ return RunChrome();
}
} // namespace android

Powered by Google App Engine
This is Rietveld 408576698