diff options
author | Fredia Huya-Kouadio <fhuya@meta.com> | 2024-04-15 10:30:18 -0700 |
---|---|---|
committer | Fredia Huya-Kouadio <fhuya@meta.com> | 2024-04-15 10:30:18 -0700 |
commit | f291a4ed3a64dd95bf8136f352e5d0554ada4a7c (patch) | |
tree | 5dd8a611fea937d1a372798a2e541cf2725f03cd /platform/android/net_socket_android.cpp | |
parent | b8fa48be040890f344a5178cf0fb9ea69c24f88e (diff) | |
download | redot-engine-f291a4ed3a64dd95bf8136f352e5d0554ada4a7c.tar.gz |
Fix leakage of JNI object references
Fixes https://github.com/godotengine/godot/issues/87548
Diffstat (limited to 'platform/android/net_socket_android.cpp')
-rw-r--r-- | platform/android/net_socket_android.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/platform/android/net_socket_android.cpp b/platform/android/net_socket_android.cpp index a2befdc9be..8f0ee51fac 100644 --- a/platform/android/net_socket_android.cpp +++ b/platform/android/net_socket_android.cpp @@ -49,6 +49,14 @@ void NetSocketAndroid::setup(jobject p_net_utils) { _multicast_lock_release = env->GetMethodID(cls, "multicastLockRelease", "()V"); } +void NetSocketAndroid::terminate() { + JNIEnv *env = get_jni_env(); + ERR_FAIL_NULL(env); + + env->DeleteGlobalRef(cls); + env->DeleteGlobalRef(net_utils); +} + void NetSocketAndroid::multicast_lock_acquire() { if (_multicast_lock_acquire) { JNIEnv *env = get_jni_env(); |