diff options
| author | Romain Guy <romainguy@google.com> | 2011-01-18 20:24:18 -0800 |
|---|---|---|
| committer | Romain Guy <romainguy@google.com> | 2011-01-18 20:24:18 -0800 |
| commit | 7890fe2da4719bf72b4fbcbef20a555d5fbd94bb (patch) | |
| tree | 7235c045b82b19ab81a4b1ccf38c5ef5c05a4ac8 /core/java | |
| parent | 2a83f001fdb189f945e82e81e717ba204824b112 (diff) | |
Don't pass a null View to OnListItemClickListener.
Bug #3365153
Change-Id: I1328a554408bf16ec592ae1a747e57a5fb9305e3
Diffstat (limited to 'core/java')
| -rw-r--r-- | core/java/android/widget/AbsListView.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/core/java/android/widget/AbsListView.java b/core/java/android/widget/AbsListView.java index d8f597207dac..5ef358bc3314 100644 --- a/core/java/android/widget/AbsListView.java +++ b/core/java/android/widget/AbsListView.java @@ -2439,8 +2439,12 @@ public abstract class AbsListView extends AdapterView<ListAdapter> implements Te if (adapter != null && mItemCount > 0 && motionPosition != INVALID_POSITION && motionPosition < adapter.getCount() && sameWindow()) { - performItemClick(getChildAt(motionPosition - mFirstPosition), motionPosition, - adapter.getItemId(motionPosition)); + final View view = getChildAt(motionPosition - mFirstPosition); + // If there is no view, something bad happened (the view scrolled off the + // screen, etc.) and we should cancel the click + if (view != null) { + performItemClick(view, motionPosition, adapter.getItemId(motionPosition)); + } } } } |
