aboutsummaryrefslogtreecommitdiffstats
path: root/src/android.c
diff options
context:
space:
mode:
authorPo Lu2023-03-09 19:42:13 +0800
committerPo Lu2023-03-09 19:42:13 +0800
commita7f0f9498f2ce303f73764817e49d0ea0e2e5c9c (patch)
tree1c8969ad89d2eb60370741a1c711f215eab22018 /src/android.c
parent7e3c22536f86d468168a1918b3df24f48e3e7d92 (diff)
downloademacs-a7f0f9498f2ce303f73764817e49d0ea0e2e5c9c.tar.gz
emacs-a7f0f9498f2ce303f73764817e49d0ea0e2e5c9c.zip
Update Android port
* src/android.c (android_destroy_handle): Handle OOM errors in android_destroy_handle.
Diffstat (limited to 'src/android.c')
-rw-r--r--src/android.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/android.c b/src/android.c
index e2ae77e30d0..69c87e731bd 100644
--- a/src/android.c
+++ b/src/android.c
@@ -2914,6 +2914,13 @@ android_destroy_handle (android_handle handle)
2914 (*android_java_env)->CallVoidMethod (android_java_env, 2914 (*android_java_env)->CallVoidMethod (android_java_env,
2915 android_handles[handle].handle, 2915 android_handles[handle].handle,
2916 method); 2916 method);
2917
2918 /* Just clear any exception thrown. If destroying the handle
2919 fails from an out-of-memory error, then Emacs loses some
2920 resources, but that is not as big deal as signalling. */
2921 (*android_java_env)->ExceptionClear (android_java_env);
2922
2923 /* Delete the global reference regardless of any error. */
2917 (*android_java_env)->DeleteGlobalRef (android_java_env, 2924 (*android_java_env)->DeleteGlobalRef (android_java_env,
2918 android_handles[handle].handle); 2925 android_handles[handle].handle);
2919 android_handles[handle].handle = NULL; 2926 android_handles[handle].handle = NULL;