summaryrefslogtreecommitdiffstats
path: root/src/widgets/itemviews
diff options
context:
space:
mode:
authorChristian Ehrlicher <ch.ehrlicher@gmx.de>2020-12-22 17:14:21 +0100
committerChristian Ehrlicher <ch.ehrlicher@gmx.de>2020-12-22 18:57:15 +0100
commit6fbcfd9164ae23b221ebce7fc3185505a8a1fb6e (patch)
treed7a0b819f9d10974824a297876c060ec65f4124b /src/widgets/itemviews
parentf8a175afba12325dcff4aee21b1b11dfde3d57e4 (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 Pick-to: 6.0 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
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 269f08ce9f..1f3b22e8f8 100644
--- a/src/widgets/itemviews/qlistview.cpp
+++ b/src/widgets/itemviews/qlistview.cpp
@@ -3245,13 +3245,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;
}