diff options
author | Albert Astals Cid <albert.astals@canonical.com> | 2016-06-30 16:54:13 +0200 |
---|---|---|
committer | Albert Astals Cid <albert.astals@canonical.com> | 2016-07-05 11:05:27 +0000 |
commit | 506ae2dba8270341cbe3ee6435baf472b0d1abed (patch) | |
tree | f5ebfe08e6d6bd9f72a2eea8769c68bdb62ad534 /tests/auto/quick/qquickshadereffect/tst_qquickshadereffect.cpp | |
parent | 240c2ef60e854575dced056d916f8a8922905e8f (diff) |
Fix crash in QQuickShaderEffect::updatePaintNode
When having a ShaderEffect and an Image sharing the texture via supportsAtlasTextures
This used to work fine in 5.4 but 38cab579a0c5398b7621221fd8609bc43cf1f3c5
removed the check for the provider not being null
Change-Id: I18cb969dbf8011ea01543cc079214e8ecbb66623
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
Diffstat (limited to 'tests/auto/quick/qquickshadereffect/tst_qquickshadereffect.cpp')
-rw-r--r-- | tests/auto/quick/qquickshadereffect/tst_qquickshadereffect.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/tests/auto/quick/qquickshadereffect/tst_qquickshadereffect.cpp b/tests/auto/quick/qquickshadereffect/tst_qquickshadereffect.cpp index c95fef9ef5..2f1d7679c8 100644 --- a/tests/auto/quick/qquickshadereffect/tst_qquickshadereffect.cpp +++ b/tests/auto/quick/qquickshadereffect/tst_qquickshadereffect.cpp @@ -81,6 +81,7 @@ private slots: void deleteSourceItem(); void deleteShaderEffectSource(); + void twoImagesOneShaderEffect(); private: enum PresenceFlags { @@ -307,6 +308,19 @@ void tst_qquickshadereffect::deleteShaderEffectSource() delete view; } +void tst_qquickshadereffect::twoImagesOneShaderEffect() +{ + // purely to ensure that deleting the sourceItem of a shader doesn't cause a crash + QQuickView *view = new QQuickView(0); + view->setSource(QUrl::fromLocalFile(testFile("twoImagesOneShaderEffect.qml"))); + view->show(); + QVERIFY(QTest::qWaitForWindowExposed(view)); + QVERIFY(view); + QObject *obj = view->rootObject(); + QVERIFY(obj); + delete view; +} + QTEST_MAIN(tst_qquickshadereffect) #include "tst_qquickshadereffect.moc" |