using NewStringNativeWithLength
This commit is contained in:
parent
a7d62babb0
commit
6889c876f6
|
@ -195,11 +195,11 @@ char * GetStringNativeChars(JNIEnv *env, jstring jstr) {
|
|||
* match GLuchar and ALuchar types
|
||||
*/
|
||||
jstring NewStringNativeUnsigned(JNIEnv *env, const unsigned char *str) {
|
||||
return NewStringNative(env, (const char *)str);
|
||||
return NewStringNativeWithLength(env, (const char *)str, strlen((const char *)str));
|
||||
}
|
||||
|
||||
// creates locale specific string
|
||||
jstring NewStringNative(JNIEnv *env, const char *str) {
|
||||
jstring NewStringNativeWithLength(JNIEnv *env, const char *str, int length) {
|
||||
jclass jcls_str;
|
||||
jmethodID jmethod_str;
|
||||
jstring result;
|
||||
|
@ -221,10 +221,10 @@ jstring NewStringNative(JNIEnv *env, const char *str) {
|
|||
if ((*env)->EnsureLocalCapacity(env,2) < 0) {
|
||||
return NULL; /* out of memory error */
|
||||
}
|
||||
len = strlen(str);
|
||||
bytes = (*env)->NewByteArray(env,len);
|
||||
|
||||
bytes = (*env)->NewByteArray(env,length);
|
||||
if (bytes != NULL) {
|
||||
(*env)->SetByteArrayRegion(env,bytes, 0, len, (jbyte *)str);
|
||||
(*env)->SetByteArrayRegion(env,bytes, 0, length, (jbyte *)str);
|
||||
result = (jstring)(*env)->NewObject(env,jcls_str, jmethod_str, bytes);
|
||||
(*env)->DeleteLocalRef(env,bytes);
|
||||
return result;
|
||||
|
@ -289,7 +289,7 @@ void ext_InitializeClass(JNIEnv *env, jclass clazz, ExtGetProcAddressPROC gpa, i
|
|||
}
|
||||
|
||||
bool getBooleanProperty(JNIEnv *env, const char* propertyName) {
|
||||
jstring property = NewStringNative(env, propertyName);
|
||||
jstring property = NewStringNativeWithLength(env, propertyName, strlen(propertyName));
|
||||
jclass org_lwjgl_LWJGLUtil_class;
|
||||
jmethodID getBoolean;
|
||||
if (property == NULL)
|
||||
|
|
|
@ -138,7 +138,7 @@ extern void printfDebugJava(JNIEnv *env, const char *format, ...);
|
|||
extern void printfDebug(const char *format, ...);
|
||||
extern bool getBooleanProperty(JNIEnv *env, const char* propertyName);
|
||||
extern char * GetStringNativeChars(JNIEnv *env, jstring jstr);
|
||||
extern jstring NewStringNative(JNIEnv *env, const char *str);
|
||||
extern jstring NewStringNativeWithLength(JNIEnv *env, const char *str, int length);
|
||||
extern jstring NewStringNativeUnsigned(JNIEnv *env, const unsigned char *str);
|
||||
extern jobject newJavaManagedByteBuffer(JNIEnv *env, const int size);
|
||||
extern bool positionBuffer(JNIEnv *env, jobject buffer, jint position);
|
||||
|
|
Loading…
Reference in New Issue