From f9868961a212b79366b2bf7a2f1c680b1c3d75ca Mon Sep 17 00:00:00 2001 From: Siarhei Vishniakou Date: Fri, 30 Nov 2018 09:45:52 -0800 Subject: Fix crash in InputManagerService We are currently storing a local variable into permanent storage, which causes jni abort, unsurprisingly. Make this a global ref instead. Bug: 120255803 Test: eng build boots properly Change-Id: Ie572d7cfdb6799af99c10aa8ade96c0fbc4eab2b --- services/core/jni/com_android_server_input_InputManagerService.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/core/jni/com_android_server_input_InputManagerService.cpp b/services/core/jni/com_android_server_input_InputManagerService.cpp index b36a8a7cdf19..43d2dcf7e0d1 100644 --- a/services/core/jni/com_android_server_input_InputManagerService.cpp +++ b/services/core/jni/com_android_server_input_InputManagerService.cpp @@ -1750,7 +1750,7 @@ int register_android_server_InputManager(JNIEnv* env) { jclass clazz; FIND_CLASS(clazz, "com/android/server/input/InputManagerService"); - gServiceClassInfo.clazz = clazz; + gServiceClassInfo.clazz = reinterpret_cast(env->NewGlobalRef(clazz)); GET_METHOD_ID(gServiceClassInfo.notifyConfigurationChanged, clazz, "notifyConfigurationChanged", "(J)V"); -- cgit v1.2.3-59-g8ed1b