From 3cf22cda98aa66084b985fedd8bba567922e8256 Mon Sep 17 00:00:00 2001 From: cgspine Date: Mon, 21 May 2018 21:32:29 +0800 Subject: [PATCH] add bounds protection --- .../java/com/qmuiteam/qmui/widget/QMUIItemViewsAdapter.java | 2 +- .../src/main/java/com/qmuiteam/qmui/widget/QMUITabSegment.java | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/qmui/src/main/java/com/qmuiteam/qmui/widget/QMUIItemViewsAdapter.java b/qmui/src/main/java/com/qmuiteam/qmui/widget/QMUIItemViewsAdapter.java index c02687cc..4f12077a 100644 --- a/qmui/src/main/java/com/qmuiteam/qmui/widget/QMUIItemViewsAdapter.java +++ b/qmui/src/main/java/com/qmuiteam/qmui/widget/QMUIItemViewsAdapter.java @@ -102,7 +102,7 @@ public abstract class QMUIItemViewsAdapter { if (mItemData == null) { return null; } - if (position < 0 || position > mItemData.size()) { + if (position < 0 || position >= mItemData.size()) { return null; } return mItemData.get(position); diff --git a/qmui/src/main/java/com/qmuiteam/qmui/widget/QMUITabSegment.java b/qmui/src/main/java/com/qmuiteam/qmui/widget/QMUITabSegment.java index d7998a66..be8808de 100644 --- a/qmui/src/main/java/com/qmuiteam/qmui/widget/QMUITabSegment.java +++ b/qmui/src/main/java/com/qmuiteam/qmui/widget/QMUITabSegment.java @@ -710,9 +710,10 @@ public class QMUITabSegment extends HorizontalScrollView { } else { targetIndex = index + 1; } + TabAdapter tabAdapter = getAdapter(); final List listViews = tabAdapter.getViews(); - if (listViews.size() < index || listViews.size() < targetIndex) { + if (listViews.size() <= index || listViews.size() <= targetIndex) { return; } Tab preModel = tabAdapter.getItem(index);