Blob Blame History Raw
diff -up qt-everywhere-opensource-src-4.7.1/src/gui/itemviews/qsortfilterproxymodel.cpp.merge_934 qt-everywhere-opensource-src-4.7.1/src/gui/itemviews/qsortfilterproxymodel.cpp
--- qt-everywhere-opensource-src-4.7.1/src/gui/itemviews/qsortfilterproxymodel.cpp.merge_934	2010-11-05 20:55:17.000000000 -0500
+++ qt-everywhere-opensource-src-4.7.1/src/gui/itemviews/qsortfilterproxymodel.cpp	2011-01-06 13:05:52.686846333 -0600
@@ -782,14 +782,14 @@ void QSortFilterProxyModelPrivate::sourc
         if (orthogonal_source_to_proxy.isEmpty()) {
             const int ortho_end = (orient == Qt::Horizontal) ? model->rowCount(source_parent) : model->columnCount(source_parent);
 
+            orthogonal_source_to_proxy.resize(ortho_end);
+
             for (int ortho_item = 0; ortho_item < ortho_end; ++ortho_item) {
                 if ((orient == Qt::Horizontal) ? q->filterAcceptsRow(ortho_item, source_parent)
                         : q->filterAcceptsColumn(ortho_item, source_parent)) {
                     orthogonal_proxy_to_source.append(ortho_item);
                 }
             }
-            orthogonal_source_to_proxy.resize(orthogonal_proxy_to_source.size());
-
             if (orient == Qt::Horizontal) {
                 // We're reacting to columnsInserted, but we've just inserted new rows. Sort them.
                 sort_source_rows(orthogonal_proxy_to_source, source_parent);