summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com>2024-03-21 20:35:37 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2024-03-21 20:35:37 +0000
commitffd9e2bb8f0aa2fb8625f681f739cf57cae26a73 (patch)
tree8874b969e6b9397330ffd3c8ac5663f3344084e1
parentee40404d52df21076eff27769466bb7b9440d004 (diff)
parent8788e8805f1ea4b2799d01c4d369b6c9ef88f8bb (diff)
downloadbase-ffd9e2bb8f0aa2fb8625f681f739cf57cae26a73.tar.gz
Merge "OomConnection: Verify memory listener state" into main
-rw-r--r--services/core/jni/com_android_server_am_OomConnection.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/services/core/jni/com_android_server_am_OomConnection.cpp b/services/core/jni/com_android_server_am_OomConnection.cpp
index 49a3ad35649b..054937fc683e 100644
--- a/services/core/jni/com_android_server_am_OomConnection.cpp
+++ b/services/core/jni/com_android_server_am_OomConnection.cpp
@@ -44,6 +44,12 @@ static MemEventListener memevent_listener(MemEventClient::AMS);
* @throws java.lang.RuntimeException
*/
static jobjectArray android_server_am_OomConnection_waitOom(JNIEnv* env, jobject) {
+ if (!memevent_listener.ok()) {
+ memevent_listener.deregisterAllEvents();
+ jniThrowRuntimeException(env, "Failed to initialize memevents listener");
+ return nullptr;
+ }
+
if (!memevent_listener.registerEvent(MEM_EVENT_OOM_KILL)) {
memevent_listener.deregisterAllEvents();
jniThrowRuntimeException(env, "listener failed to register to OOM events");