Commit d9814efe authored by Po Lu's avatar Po Lu
Browse files

; * src/androidfns.c (syms_of_androidfns_for_pdumper): Fix crash.

parent f5a3b5e6
Pipeline #27490 failed with stages
in 117 minutes and 38 seconds
......@@ -3278,31 +3278,36 @@ syms_of_androidfns_for_pdumper (void)
/* Proceed to retrieve the script. */
method = (*android_java_env)->GetMethodID (android_java_env, locale,
"getScript",
"()Ljava/lang/String;");
if (!method)
emacs_abort ();
string = (*android_java_env)->CallObjectMethod (android_java_env, object,
method);
android_exception_check_2 (object, locale);
if (!string)
if (android_get_current_api_level () < 21)
script = empty_unibyte_string;
else
{
data = (*android_java_env)->GetStringUTFChars (android_java_env,
string, NULL);
android_exception_check_3 (object, locale, string);
method = (*android_java_env)->GetMethodID (android_java_env, locale,
"getScript",
"()Ljava/lang/String;");
if (!method)
emacs_abort ();
if (!data)
string = (*android_java_env)->CallObjectMethod (android_java_env,
object, method);
android_exception_check_2 (object, locale);
if (!string)
script = empty_unibyte_string;
else
{
script = build_unibyte_string (data);
(*android_java_env)->ReleaseStringUTFChars (android_java_env,
string, data);
data = (*android_java_env)->GetStringUTFChars (android_java_env,
string, NULL);
android_exception_check_3 (object, locale, string);
if (!data)
script = empty_unibyte_string;
else
{
script = build_unibyte_string (data);
(*android_java_env)->ReleaseStringUTFChars (android_java_env,
string, data);
}
}
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment