diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2018-06-20 12:23:37 +0200 |
---|---|---|
committer | Paul Lemire <paul.lemire@kdab.com> | 2018-06-25 04:39:23 +0000 |
commit | f6a0587ef0a90f2e8333ea012aafdd956bca91f6 (patch) | |
tree | e3d28bf525a7a33c3ae3437473ae140358b01612 /tests/auto/render/renderviewbuilder | |
parent | be0cd9c0b19f1f1b72d2bc165e948d162b998f88 (diff) |
Fix race condition when executing multiple filterlayerjobs at once
The updating of referenced layer ids for each Entity should only be performed
once and not by multiple jobs. Therefore, this update was moved into a
dedicated job which is now a dependency of the filterentityjob instances.
Change-Id: Ie8ecc49a7c6c7d41a1f1f0d18619b5e142b68204
Task-number: QTBUG-68942
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'tests/auto/render/renderviewbuilder')
-rw-r--r-- | tests/auto/render/renderviewbuilder/tst_renderviewbuilder.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/tests/auto/render/renderviewbuilder/tst_renderviewbuilder.cpp b/tests/auto/render/renderviewbuilder/tst_renderviewbuilder.cpp index cb51012c1..81bca0158 100644 --- a/tests/auto/render/renderviewbuilder/tst_renderviewbuilder.cpp +++ b/tests/auto/render/renderviewbuilder/tst_renderviewbuilder.cpp @@ -352,7 +352,8 @@ private Q_SLOTS: QCOMPARE(renderViewBuilder.syncRenderViewInitializationJob()->dependencies().first().data(), renderViewBuilder.renderViewJob().data()); // Step 3 - QCOMPARE(renderViewBuilder.filterEntityByLayerJob()->dependencies().size(), 2); + QCOMPARE(renderViewBuilder.filterEntityByLayerJob()->dependencies().size(), 3); + QVERIFY(renderViewBuilder.filterEntityByLayerJob()->dependencies().contains(testAspect.renderer()->updateEntityLayersJob())); QVERIFY(renderViewBuilder.filterEntityByLayerJob()->dependencies().contains(renderViewBuilder.syncRenderViewInitializationJob())); QVERIFY(renderViewBuilder.filterEntityByLayerJob()->dependencies().contains(testAspect.renderer()->updateTreeEnabledJob())); |