From a8b4dcc8272ce4da23dfca62ef7593b26fcabeb1 Mon Sep 17 00:00:00 2001 From: Fabrice Di Meglio Date: Fri, 13 Jun 2014 11:35:48 -0700 Subject: [PATCH] Fix bug #15611108 Stability: CursorIndexOutOfBoundsException in Settings: Index -1 requested, with a size of 1 - do not allow to have position < 0 A use case was generated by the Monkeys where they were capable to click on the Header. Change-Id: I3a8ded4c1471a1589134826539c9db1b551f49dd --- src/com/android/settings/dashboard/SearchResultsSummary.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/com/android/settings/dashboard/SearchResultsSummary.java b/src/com/android/settings/dashboard/SearchResultsSummary.java index 69816347542..5f236711442 100644 --- a/src/com/android/settings/dashboard/SearchResultsSummary.java +++ b/src/com/android/settings/dashboard/SearchResultsSummary.java @@ -216,6 +216,11 @@ public class SearchResultsSummary extends Fragment { public void onItemClick(AdapterView parent, View view, int position, long id) { // We have a header, so we need to decrement the position by one position--; + // Some Monkeys could create a case where they were probably clicking on the + // List Header and thus the position passed was "0" and then by decrement was "-1" + if (position < 0) { + return; + } final Cursor cursor = mSuggestionsAdapter.mCursor; cursor.moveToPosition(position);