diff options
author | Stephen Kelly <steveire@gmail.com> | 2013-03-12 11:30:59 +0100 |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2013-03-12 18:41:26 -0400 |
commit | 404e1d675ab1359bc79d3631abca911f178afcf4 (patch) | |
tree | f31c864eb68cd6d3026c9d83c9391341e17d1983 /Source/QtDialog | |
parent | 5144f6fb1121492d963c9a266650d219ee7eccc3 (diff) | |
download | cmake-404e1d675ab1359bc79d3631abca911f178afcf4.tar.gz |
cmake-gui: Workaround bug in Qt 5.0.0 to 5.0.3 QStandardItemModel
The commit in qtbase 9dfba89c (Add implementations of QAIM::sibling in
public APIs., 2012-09-26) added a buggy implementation of sibling(), and
the commit f136701b (Use the base implementation of
QAbstractItemModel::sibling in QSIM., 2013-02-21) resolves it.
Workaround the bug for Qt releases that have it.
Diffstat (limited to 'Source/QtDialog')
-rw-r--r-- | Source/QtDialog/QCMakeCacheView.cxx | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/Source/QtDialog/QCMakeCacheView.cxx b/Source/QtDialog/QCMakeCacheView.cxx index 1d21d421d0..031350ba47 100644 --- a/Source/QtDialog/QCMakeCacheView.cxx +++ b/Source/QtDialog/QCMakeCacheView.cxx @@ -490,7 +490,11 @@ QCMakePropertyList QCMakeCacheModel::properties() const } // go to the next in the tree - while(!idxs.isEmpty() && !idxs.last().sibling(idxs.last().row()+1, 0).isValid()) + while(!idxs.isEmpty() && ( +#if QT_VERSION < QT_VERSION_CHECK(5, 0, 3) + (idxs.last().row()+1) >= rowCount(idxs.last().parent()) || +#endif + !idxs.last().sibling(idxs.last().row()+1, 0).isValid())) { idxs.removeLast(); } |