mirror of
https://github.com/AngelAuraMC/Amethyst-Android.git
synced 2025-09-17 16:47:14 -04:00
fix: OOB on chinese char (#4681)
* fix StringIndexOutOfBoundsException when `log` contain `chinese` char * lost code * Update stdio_is.c * Update stdio_is.c
This commit is contained in:
parent
01e1fdf177
commit
5a285c811c
@ -137,7 +137,7 @@ JNIEXPORT void JNICALL Java_net_kdt_pojavlaunch_utils_JREUtils_setupExitTrap(JNI
|
||||
JNIEXPORT void JNICALL Java_net_kdt_pojavlaunch_Logger_appendToLog(JNIEnv *env, __attribute((unused)) jclass clazz, jstring text) {
|
||||
jsize appendStringLength = (*env)->GetStringUTFLength(env, text);
|
||||
char newChars[appendStringLength+2];
|
||||
(*env)->GetStringUTFRegion(env, text, 0, appendStringLength, newChars);
|
||||
(*env)->GetStringUTFRegion(env, text, 0, (*env)->GetStringLength(env, text), newChars);
|
||||
newChars[appendStringLength] = '\n';
|
||||
newChars[appendStringLength+1] = 0;
|
||||
if(recordBuffer(newChars, appendStringLength+1) && logListener != NULL) {
|
||||
@ -154,4 +154,4 @@ Java_net_kdt_pojavlaunch_Logger_setLogListener(JNIEnv *env, __attribute((unused)
|
||||
logListener = (*env)->NewGlobalRef(env, log_listener);
|
||||
}
|
||||
if(logListenerLocal != NULL) (*env)->DeleteGlobalRef(env, logListenerLocal);
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user