QHeaderView - change not needed if to Q_ASSERT
authorThorbjørn Lund Martsum <tmartsum@gmail.com>
Thu, 23 Feb 2012 08:56:12 +0000 (09:56 +0100)
committerQt by Nokia <qt-info@nokia.com>
Fri, 24 Feb 2012 13:55:06 +0000 (14:55 +0100)
This removes an if that should always be false. If it isn't
false we had more logical indexes than sections.

Unless visualIndices and logicalIndices are both 0-sized
(meaning that visual and logical indexes are the same)
then they better have exactly as many indexes as sectionCount.
Otherwise there must be inconsistent data - some logicalindex
would refer to non-existing visual sections or some
visualindeces wouldn't be hit by logicalIndices.

Change-Id: I2dc92f40895438d912bba20612131baf63df4fbe
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
src/widgets/itemviews/qheaderview.cpp

index 6a1f949..c457f16 100644 (file)
@@ -1802,9 +1802,8 @@ void QHeaderViewPrivate::_q_sectionsRemoved(const QModelIndex &parent,
         if (logicalFirst == logicalLast) { // Remove just one index.
             int l = logicalFirst;
             int visual = visualIndices.at(l);
+            Q_ASSERT(sectionCount == logicalIndices.count());
             for (int v = 0; v < sectionCount; ++v) {
-                if (v >= logicalIndices.count())
-                    continue; // the section doesn't exist
                 if (v > visual) {
                     int logical = logicalIndices.at(v);
                     --(visualIndices[logical]);