summaryrefslogtreecommitdiffstats
path: root/src/widgets/itemviews
diff options
context:
space:
mode:
authorChristian Ehrlicher <ch.ehrlicher@gmx.de>2020-12-22 17:14:21 +0100
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2020-12-22 23:48:08 +0000
commitb14a33ff671b555b3677a012867489e174cb98e7 (patch)
treee717634a265d75b7f0ee8216164045ff90edcd84 /src/widgets/itemviews
parente0121157db5d83cf72dec11da193fe63a07d88ce (diff)
QListView: don't crash when an empty container is passed to itemsRect()
QIconModeViewBase::itemsRect() is crashing with Qt6 when an empty container is passed. Fixes: QTBUG-89434 Change-Id: I324f1a34b62e67c7bbd3fe33227f4174df7d3d37 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> (cherry picked from commit 6fbcfd9164ae23b221ebce7fc3185505a8a1fb6e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'src/widgets/itemviews')
-rw-r--r--src/widgets/itemviews/qlistview.cpp10
1 files changed, 3 insertions, 7 deletions
diff --git a/src/widgets/itemviews/qlistview.cpp b/src/widgets/itemviews/qlistview.cpp
index 5e400e5c8f..7e472d37c2 100644
--- a/src/widgets/itemviews/qlistview.cpp
+++ b/src/widgets/itemviews/qlistview.cpp
@@ -3248,13 +3248,9 @@ QList<QModelIndex> QIconModeViewBase::intersectingSet(const QRect &area) const
QRect QIconModeViewBase::itemsRect(const QList<QModelIndex> &indexes) const
{
- QList<QModelIndex>::const_iterator it = indexes.begin();
- QListViewItem item = indexToListViewItem(*it);
- QRect rect(item.x, item.y, item.w, item.h);
- for (; it != indexes.end(); ++it) {
- item = indexToListViewItem(*it);
- rect |= viewItemRect(item);
- }
+ QRect rect;
+ for (const auto &index : indexes)
+ rect |= viewItemRect(indexToListViewItem(index));
return rect;
}