From c3b77c7c2971124cbf3b2d9da64e7a8a9a649f2e Mon Sep 17 00:00:00 2001 From: Elliott Hughes Date: Thu, 15 Dec 2011 20:56:48 -0800 Subject: Avoid copying and strlen(3) in the FindClass path. Change-Id: I789f3c883596d1852a2c1954ce7a207e6f937117 --- src/java_lang_reflect_Array.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/java_lang_reflect_Array.cc') diff --git a/src/java_lang_reflect_Array.cc b/src/java_lang_reflect_Array.cc index 1d8b526f6d..3bf26808de 100644 --- a/src/java_lang_reflect_Array.cc +++ b/src/java_lang_reflect_Array.cc @@ -46,7 +46,7 @@ Array* CreateMultiArray(Class* array_class, int current_dimension, IntArray* dim } std::string sub_array_descriptor(ClassHelper(array_class).GetDescriptor() + 1); ClassLinker* class_linker = Runtime::Current()->GetClassLinker(); - Class* sub_array_class = class_linker->FindClass(sub_array_descriptor, + Class* sub_array_class = class_linker->FindClass(sub_array_descriptor.c_str(), array_class->GetClassLoader()); if (sub_array_class == NULL) { CHECK(Thread::Current()->IsExceptionPending()); @@ -106,7 +106,7 @@ jobject Array_createMultiArray(JNIEnv* env, jclass, jclass javaElementClass, job // Find/generate the array class. ClassLinker* class_linker = Runtime::Current()->GetClassLinker(); - Class* array_class = class_linker->FindClass(descriptor, element_class->GetClassLoader()); + Class* array_class = class_linker->FindClass(descriptor.c_str(), element_class->GetClassLoader()); if (array_class == NULL) { CHECK(Thread::Current()->IsExceptionPending()); return NULL; @@ -134,7 +134,7 @@ jobject Array_createObjectArray(JNIEnv* env, jclass, jclass javaElementClass, ji descriptor += ClassHelper(element_class).GetDescriptor(); ClassLinker* class_linker = Runtime::Current()->GetClassLinker(); - Class* array_class = class_linker->FindClass(descriptor, element_class->GetClassLoader()); + Class* array_class = class_linker->FindClass(descriptor.c_str(), element_class->GetClassLoader()); if (array_class == NULL) { CHECK(Thread::Current()->IsExceptionPending()); return NULL; -- cgit v1.2.3-59-g8ed1b