summaryrefslogtreecommitdiffstats
path: root/content/app/android
diff options
context:
space:
mode:
authormichaelbai@chromium.org <michaelbai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-15 21:43:18 +0000
committermichaelbai@chromium.org <michaelbai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-15 21:43:18 +0000
commit86ebc8f3731a84fea14e8688da4eb55aba87008a (patch)
tree2639dccb20377423690fa69468c1df9a0e6de31d /content/app/android
parentf5411e2e50d20ad0c54336fd552a86f36f2b9e63 (diff)
downloadchromium_src-86ebc8f3731a84fea14e8688da4eb55aba87008a.zip
chromium_src-86ebc8f3731a84fea14e8688da4eb55aba87008a.tar.gz
chromium_src-86ebc8f3731a84fea14e8688da4eb55aba87008a.tar.bz2
Throw exception when initialization failed.
Previously the initialization return code was ignored, it will lead us crash later. We need a way to exit and maybe show error message if something wrong during initialization. Using exception might better than returning the result code since the initialization code could be called from constructor and initialization error is an exception at most of time. In activity, the exception is caught, then call finish() to exit. In tests, the exception is wrapped with Error and threw out. BUG=b/7705055 Review URL: https://chromiumcodereview.appspot.com/11567061 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@176975 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/app/android')
-rw-r--r--content/app/android/library_loader_hooks.cc21
1 files changed, 11 insertions, 10 deletions
diff --git a/content/app/android/library_loader_hooks.cc b/content/app/android/library_loader_hooks.cc
index 346a0ed..80026b8 100644
--- a/content/app/android/library_loader_hooks.cc
+++ b/content/app/android/library_loader_hooks.cc
@@ -23,6 +23,7 @@
#include "content/common/android/common_jni_registrar.h"
#include "content/common/android/command_line.h"
#include "content/public/common/content_switches.h"
+#include "content/public/common/result_codes.h"
#include "media/base/android/media_jni_registrar.h"
#include "net/android/net_jni_registrar.h"
#include "ui/android/ui_jni_registrar.h"
@@ -35,7 +36,7 @@ base::AtExitManager* g_at_exit_manager = NULL;
namespace content {
-static jboolean LibraryLoadedOnMainThread(JNIEnv* env, jclass clazz,
+static jint LibraryLoadedOnMainThread(JNIEnv* env, jclass clazz,
jobjectArray init_command_line) {
InitNativeCommandLineFromJavaArray(env, init_command_line);
@@ -70,30 +71,30 @@ static jboolean LibraryLoadedOnMainThread(JNIEnv* env, jclass clazz,
<< ", default verbosity = " << logging::GetVlogVerbosity();
if (!base::android::RegisterJni(env))
- return JNI_FALSE;
+ return RESULT_CODE_FAILED_TO_REGISTER_JNI;
if (!net::android::RegisterJni(env))
- return JNI_FALSE;
+ return RESULT_CODE_FAILED_TO_REGISTER_JNI;
if (!ui::RegisterJni(env))
- return JNI_FALSE;
+ return RESULT_CODE_FAILED_TO_REGISTER_JNI;
if (!content::android::RegisterCommonJni(env))
- return JNI_FALSE;
+ return RESULT_CODE_FAILED_TO_REGISTER_JNI;
if (!content::android::RegisterBrowserJni(env))
- return JNI_FALSE;
+ return RESULT_CODE_FAILED_TO_REGISTER_JNI;
if (!content::android::RegisterAppJni(env))
- return JNI_FALSE;
+ return RESULT_CODE_FAILED_TO_REGISTER_JNI;
if (!media::RegisterJni(env))
- return JNI_FALSE;
+ return RESULT_CODE_FAILED_TO_REGISTER_JNI;
if (!gfx::RegisterJni(env))
- return JNI_FALSE;
+ return RESULT_CODE_FAILED_TO_REGISTER_JNI;
- return JNI_TRUE;
+ return 0;
}
void LibraryLoaderExitHook() {