summaryrefslogtreecommitdiff
path: root/core/jni/android_hardware_input_InputApplicationHandle.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/jni/android_hardware_input_InputApplicationHandle.cpp')
-rw-r--r--core/jni/android_hardware_input_InputApplicationHandle.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/core/jni/android_hardware_input_InputApplicationHandle.cpp b/core/jni/android_hardware_input_InputApplicationHandle.cpp
index 71edfd553e7e..c1ecae861827 100644
--- a/core/jni/android_hardware_input_InputApplicationHandle.cpp
+++ b/core/jni/android_hardware_input_InputApplicationHandle.cpp
@@ -58,6 +58,11 @@ bool NativeInputApplicationHandle::updateInfo() {
if (!obj) {
return false;
}
+ if (mInfo.token.get() != nullptr) {
+ // The java fields are immutable, so it doesn't need to update again.
+ env->DeleteLocalRef(obj);
+ return true;
+ }
mInfo.name = getStringField(env, obj, gInputApplicationHandleClassInfo.name, "<null>");