mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-18 22:54:00 +00:00
31 lines
1.4 KiB
Diff
31 lines
1.4 KiB
Diff
From e8425f9e52c9df0ce0fbf122adff3ef6930f9961 Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?Thorbj=C3=B8rn=20Lund=20Martsum?= <tmartsum@gmail.com>
|
|
Date: Wed, 28 Feb 2018 09:23:54 +0100
|
|
Subject: QHeaderView: Fix crash in layout about to change
|
|
|
|
Before there was a risk looking up e.g index -1 if there
|
|
were no visible sections in layoutAboutToChange.
|
|
|
|
Change-Id: Ic911e4292e8e8c4892fef1c0f34cf7dccaad2bac
|
|
Task-number: QTBUG-65478
|
|
Reviewed-by: David Faure <david.faure@kdab.com>
|
|
---
|
|
diff --git a/src/widgets/itemviews/qheaderview.cpp b/src/widgets/itemviews/qheaderview.cpp
|
|
index 26d7c5472a..708b9b44ca 100644
|
|
--- a/src/widgets/itemviews/qheaderview.cpp
|
|
+++ b/src/widgets/itemviews/qheaderview.cpp
|
|
@@ -2163,9 +2163,11 @@ void QHeaderViewPrivate::_q_sectionsAboutToBeChanged()
|
|
layoutChangePersistentSections.clear();
|
|
layoutChangePersistentSections.reserve(std::min(10, sectionItems.count()));
|
|
// after layoutChanged another section can be last stretched section
|
|
- if (stretchLastSection) {
|
|
+ if (stretchLastSection && lastSectionLogicalIdx >= 0 && lastSectionLogicalIdx < sectionItems.count()) {
|
|
const int visual = visualIndex(lastSectionLogicalIdx);
|
|
- sectionItems[visual].size = lastSectionSize;
|
|
+ if (visual >= 0 && visual < sectionItems.size()) {
|
|
+ sectionItems[visual].size = lastSectionSize;
|
|
+ }
|
|
}
|
|
for (int i = 0; i < sectionItems.size(); ++i) {
|
|
auto s = sectionItems.at(i);
|
|
|