diff options
| author | Po Lu | 2023-03-09 19:42:13 +0800 |
|---|---|---|
| committer | Po Lu | 2023-03-09 19:42:13 +0800 |
| commit | a7f0f9498f2ce303f73764817e49d0ea0e2e5c9c (patch) | |
| tree | 1c8969ad89d2eb60370741a1c711f215eab22018 /src/android.c | |
| parent | 7e3c22536f86d468168a1918b3df24f48e3e7d92 (diff) | |
| download | emacs-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.c | 7 |
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; |