From 31c52c9ce25599b8cf2b0f8e8d3a45e57987301f Mon Sep 17 00:00:00 2001 From: Chris Wailes Date: Thu, 14 Feb 2019 11:20:02 -0800 Subject: [PATCH] Fix loop iteration bug. This patch fixes a loop iteration bug in the capabilities calculation code of the Zygote. This bug was introduced in aosp/804219. Bug: 124268515 Test: Built Change-Id: Ic4e3e736c0aa0e2ecaed87ca6f12367be41715f3 --- core/jni/com_android_internal_os_Zygote.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/jni/com_android_internal_os_Zygote.cpp b/core/jni/com_android_internal_os_Zygote.cpp index 3012c906df7b6..f83f2d079a17b 100644 --- a/core/jni/com_android_internal_os_Zygote.cpp +++ b/core/jni/com_android_internal_os_Zygote.cpp @@ -1115,8 +1115,8 @@ static jlong CalculateCapabilities(JNIEnv* env, jint uid, jint gid, jintArray gi RuntimeAbort(env, __LINE__, "Bad gids array"); } - for (int gid_index = gids_num; --gids_num >= 0;) { - if (native_gid_proxy[gid_index] == AID_WAKELOCK) { + for (int gids_index = 0; gids_index < gids_num; ++gids_index) { + if (native_gid_proxy[gids_index] == AID_WAKELOCK) { gid_wakelock_found = true; break; }