< prev index next >

src/hotspot/share/classfile/javaClasses.cpp

Print this page

        

*** 385,402 **** // Converts a C string to a Java String based on current encoding Handle java_lang_String::create_from_platform_dependent_str(const char* str, TRAPS) { assert(str != NULL, "bad arguments"); ! typedef jstring (*to_java_string_fn_t)(JNIEnv*, const char *); static to_java_string_fn_t _to_java_string_fn = NULL; if (_to_java_string_fn == NULL) { void *lib_handle = os::native_java_library(); ! _to_java_string_fn = CAST_TO_FN_PTR(to_java_string_fn_t, os::dll_lookup(lib_handle, "NewStringPlatform")); if (_to_java_string_fn == NULL) { ! fatal("NewStringPlatform missing"); } } jstring js = NULL; { --- 385,408 ---- // Converts a C string to a Java String based on current encoding Handle java_lang_String::create_from_platform_dependent_str(const char* str, TRAPS) { assert(str != NULL, "bad arguments"); ! typedef jstring (JNICALL *to_java_string_fn_t)(JNIEnv*, const char *); static to_java_string_fn_t _to_java_string_fn = NULL; if (_to_java_string_fn == NULL) { void *lib_handle = os::native_java_library(); ! _to_java_string_fn = CAST_TO_FN_PTR(to_java_string_fn_t, os::dll_lookup(lib_handle, "JNU_NewStringPlatform")); ! #if defined(_WIN32) && !defined(_WIN64) if (_to_java_string_fn == NULL) { ! // On 32 bit Windows, also try __stdcall decorated name ! _to_java_string_fn = CAST_TO_FN_PTR(to_java_string_fn_t, os::dll_lookup(lib_handle, "_JNU_NewStringPlatform@8")); ! } ! #endif ! if (_to_java_string_fn == NULL) { ! fatal("JNU_NewStringPlatform missing"); } } jstring js = NULL; {
< prev index next >