summaryrefslogtreecommitdiff
path: root/tests/auto/shared/testmodel.h
diff options
context:
space:
mode:
authorJoni Poikelin <joni.poikelin@theqtcompany.com>2016-04-06 13:50:08 +0300
committerJoni Poikelin <joni.poikelin@qt.io>2016-08-26 07:59:40 +0000
commit69b3136bae16897492d27558c5909cd61a5e598e (patch)
tree94be91dcdff8a14bc42a203022157924f447c739 /tests/auto/shared/testmodel.h
parentf44ef9daf9f0f9db6775fdb6d3fc8703b6ce77e4 (diff)
downloadqtquickcontrols-69b3136bae16897492d27558c5909cd61a5e598e.tar.gz
Fix moving of TreeView items
Property binding for row property in styleData causes an update which tries to read new value for the index property, but index is changed afterwards which causes old value to be read. This may lead to crashes and other unwanted behavior. Depth changes are now delivered to update item depths in visible items and model index changes though role instead of looking for a row change. Task-number: QTBUG-47523 Change-Id: I540cd06a25281f18e4628f4b030cf969dc8e0a7f Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
Diffstat (limited to 'tests/auto/shared/testmodel.h')
-rw-r--r--tests/auto/shared/testmodel.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/tests/auto/shared/testmodel.h b/tests/auto/shared/testmodel.h
index 00e74129..d1f49a4d 100644
--- a/tests/auto/shared/testmodel.h
+++ b/tests/auto/shared/testmodel.h
@@ -238,7 +238,7 @@ public:
bool moveRows(const QModelIndex &sourceParent, int sourceRow, int count, const QModelIndex &destinationParent, int destinationChild)
{
Q_ASSERT_X(sourceRow >= 0 && sourceRow < rowCount(sourceParent)
- && count > 0 && sourceRow + count < rowCount(sourceParent)
+ && count > 0 && sourceRow + count - 1 < rowCount(sourceParent)
&& destinationChild >= 0 && destinationChild <= rowCount(destinationParent),
Q_FUNC_INFO, "Rows out of range.");
Q_ASSERT_X(!(sourceParent == destinationParent && destinationChild >= sourceRow && destinationChild < sourceRow + count),