< prev index next >

src/java.base/share/native/libjava/jni_util.c

Print this page




 774             (*env)->DeleteLocalRef(env, enc);
 775         }
 776     } else {
 777         JNU_ThrowInternalError(env, "platform encoding undefined");
 778         return;
 779     }
 780 
 781     /* Initialize method-id cache */
 782     String_getBytes_ID = (*env)->GetMethodID(env, strClazz,
 783                                              "getBytes", "(Ljava/lang/String;)[B");
 784     CHECK_NULL(String_getBytes_ID);
 785     String_init_ID = (*env)->GetMethodID(env, strClazz,
 786                                          "<init>", "([BLjava/lang/String;)V");
 787     CHECK_NULL(String_init_ID);
 788     String_coder_ID = (*env)->GetFieldID(env, strClazz, "coder", "B");
 789     CHECK_NULL(String_coder_ID);
 790     String_value_ID = (*env)->GetFieldID(env, strClazz, "value", "[B");
 791     CHECK_NULL(String_value_ID);
 792 }
 793 
 794 // This alias is used for compatibility with 32 bit Windows
 795 JNIEXPORT jstring
 796 NewStringPlatform(JNIEnv *env, const char *str)
 797 {
 798     return JNU_NewStringPlatform(env, str);
 799 }
 800 
 801 JNIEXPORT jstring JNICALL
 802 JNU_NewStringPlatform(JNIEnv *env, const char *str)
 803 {
 804     if (fastEncoding == FAST_UTF_8)
 805         return newStringUTF8(env, str);
 806     if (fastEncoding == FAST_8859_1)
 807         return newString8859_1(env, str);
 808     if (fastEncoding == FAST_646_US)
 809         return newString646_US(env, str);
 810     if (fastEncoding == FAST_CP1252)
 811         return newStringCp1252(env, str);
 812     if (fastEncoding == NO_ENCODING_YET) {
 813         JNU_ThrowInternalError(env, "platform encoding not initialized");
 814         return NULL;
 815     }
 816     return newStringJava(env, str);
 817 }
 818 
 819 JNIEXPORT const char *
 820 GetStringPlatformChars(JNIEnv *env, jstring jstr, jboolean *isCopy)




 774             (*env)->DeleteLocalRef(env, enc);
 775         }
 776     } else {
 777         JNU_ThrowInternalError(env, "platform encoding undefined");
 778         return;
 779     }
 780 
 781     /* Initialize method-id cache */
 782     String_getBytes_ID = (*env)->GetMethodID(env, strClazz,
 783                                              "getBytes", "(Ljava/lang/String;)[B");
 784     CHECK_NULL(String_getBytes_ID);
 785     String_init_ID = (*env)->GetMethodID(env, strClazz,
 786                                          "<init>", "([BLjava/lang/String;)V");
 787     CHECK_NULL(String_init_ID);
 788     String_coder_ID = (*env)->GetFieldID(env, strClazz, "coder", "B");
 789     CHECK_NULL(String_coder_ID);
 790     String_value_ID = (*env)->GetFieldID(env, strClazz, "value", "[B");
 791     CHECK_NULL(String_value_ID);
 792 }
 793 







 794 JNIEXPORT jstring JNICALL
 795 JNU_NewStringPlatform(JNIEnv *env, const char *str)
 796 {
 797     if (fastEncoding == FAST_UTF_8)
 798         return newStringUTF8(env, str);
 799     if (fastEncoding == FAST_8859_1)
 800         return newString8859_1(env, str);
 801     if (fastEncoding == FAST_646_US)
 802         return newString646_US(env, str);
 803     if (fastEncoding == FAST_CP1252)
 804         return newStringCp1252(env, str);
 805     if (fastEncoding == NO_ENCODING_YET) {
 806         JNU_ThrowInternalError(env, "platform encoding not initialized");
 807         return NULL;
 808     }
 809     return newStringJava(env, str);
 810 }
 811 
 812 JNIEXPORT const char *
 813 GetStringPlatformChars(JNIEnv *env, jstring jstr, jboolean *isCopy)


< prev index next >