diff options
| author | 2022-04-01 10:39:25 -0500 | |
|---|---|---|
| committer | 2022-04-01 17:16:58 +0000 | |
| commit | 5e70aa5597c8c6c337ff9ff6bfb11469e05fa890 (patch) | |
| tree | ad2714ae8c03b1b5d1a731c75111fd657cbe2b38 | |
| parent | 6d1be01f3eae2f48aa36afcaa0cf072cb535fbc8 (diff) | |
Add ScopedLocalFrame in functions that hold Java objects
In order to make sure all the Java objects are cleaned up, add
ScopedLocalFrame in each function that converts native objects to Java.
This will make sure any local object will be cleaned up.
Test: Builds
Bug: 225287201
Change-Id: I4264d3869409597c44bcf897e4ebeae0660f252b
| -rw-r--r-- | core/jni/android_window_WindowInfosListener.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/core/jni/android_window_WindowInfosListener.cpp b/core/jni/android_window_WindowInfosListener.cpp index aae2549df429..f2cbe8abae8b 100644 --- a/core/jni/android_window_WindowInfosListener.cpp +++ b/core/jni/android_window_WindowInfosListener.cpp @@ -22,6 +22,7 @@ #include <gui/DisplayInfo.h> #include <gui/SurfaceComposerClient.h> #include <nativehelper/JNIHelp.h> +#include <nativehelper/ScopedLocalFrame.h> #include <utils/Log.h> #include "android_hardware_input_InputWindowHandle.h" @@ -95,6 +96,7 @@ struct WindowInfosListener : public gui::WindowInfosListener { JNIEnv* env = AndroidRuntime::getJNIEnv(); LOG_ALWAYS_FATAL_IF(env == nullptr, "Unable to retrieve JNIEnv in onWindowInfoChanged."); + ScopedLocalFrame localFrame(env); jobject listener = env->NewGlobalRef(mListener); if (listener == nullptr) { // Weak reference went out of scope |