diff options
author | Dianne Hackborn <hackbod@android.com> | 2013-06-17 18:33:49 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2013-06-17 18:33:49 -0700 |
commit | 94c747db09033e24188e79c7e0e2cfef8402b48f (patch) | |
tree | c75b30c1b409a7f898156528a077b87638db96f8 | |
parent | 54a5338b7caed808d1c613d7f744ed4376ec65ed (diff) | |
parent | 2f3f86c113f10b841b8597a05f724a996ba76641 (diff) | |
download | frameworks_base-94c747db09033e24188e79c7e0e2cfef8402b48f.zip frameworks_base-94c747db09033e24188e79c7e0e2cfef8402b48f.tar.gz frameworks_base-94c747db09033e24188e79c7e0e2cfef8402b48f.tar.bz2 |
am 2f3f86c1: am 1d4cd879: am 11cd57ca: Merge "Avoid unnecessary FindClass("java/lang/String")."
* commit '2f3f86c113f10b841b8597a05f724a996ba76641':
Avoid unnecessary FindClass("java/lang/String").
-rw-r--r-- | core/jni/android_util_AssetManager.cpp | 18 |
1 files changed, 3 insertions, 15 deletions
diff --git a/core/jni/android_util_AssetManager.cpp b/core/jni/android_util_AssetManager.cpp index dc4d945..32f6ecf 100644 --- a/core/jni/android_util_AssetManager.cpp +++ b/core/jni/android_util_AssetManager.cpp @@ -293,17 +293,10 @@ static jobjectArray android_content_AssetManager_list(JNIEnv* env, jobject clazz return NULL; } - jclass cls = env->FindClass("java/lang/String"); - LOG_FATAL_IF(cls == NULL, "No string class?!?"); - if (cls == NULL) { - delete dir; - return NULL; - } - size_t N = dir->getFileCount(); jobjectArray array = env->NewObjectArray(dir->getFileCount(), - cls, NULL); + g_stringClass, NULL); if (array == NULL) { delete dir; return NULL; @@ -1459,19 +1452,13 @@ static jobjectArray android_content_AssetManager_getArrayStringResource(JNIEnv* } const ResTable& res(am->getResources()); - jclass cls = env->FindClass("java/lang/String"); - LOG_FATAL_IF(cls == NULL, "No string class?!?"); - if (cls == NULL) { - return NULL; - } - const ResTable::bag_entry* startOfBag; const ssize_t N = res.lockBag(arrayResId, &startOfBag); if (N < 0) { return NULL; } - jobjectArray array = env->NewObjectArray(N, cls, NULL); + jobjectArray array = env->NewObjectArray(N, g_stringClass, NULL); if (env->ExceptionCheck()) { res.unlockBag(startOfBag); return NULL; @@ -1768,6 +1755,7 @@ int register_android_content_AssetManager(JNIEnv* env) jclass stringClass = env->FindClass("java/lang/String"); LOG_FATAL_IF(stringClass == NULL, "Unable to find class java/lang/String"); g_stringClass = (jclass)env->NewGlobalRef(stringClass); + LOG_FATAL_IF(g_stringClass == NULL, "Unable to create global reference for class java/lang/String"); return AndroidRuntime::registerNativeMethods(env, "android/content/res/AssetManager", gAssetManagerMethods, NELEM(gAssetManagerMethods)); |