diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2015-03-11 15:18:14 +0100 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2015-04-25 08:04:56 +0000 |
commit | 215311202708d8f16a1da6a00e8fa56bc3878551 (patch) | |
tree | 9667b5a437845f0445b5b0da1bd312b7314e1d53 | |
parent | 1d1b84a579eff2e245e491012104b7c5b5d655d1 (diff) |
QRenderPass use QNodePtr to send clones
and updated tst_renderrenderpass
Change-Id: I9fae01de6c1c343cdc327cfed5ffa0cf16b01988
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
-rw-r--r-- | src/render/backend/renderrenderpass.cpp | 3 | ||||
-rw-r--r-- | src/render/frontend/qrenderpass.cpp | 2 | ||||
-rw-r--r-- | tests/auto/render/renderrenderpass/tst_renderrenderpass.cpp | 5 |
3 files changed, 5 insertions, 5 deletions
diff --git a/src/render/backend/renderrenderpass.cpp b/src/render/backend/renderrenderpass.cpp index 21d573651..9cdb387da 100644 --- a/src/render/backend/renderrenderpass.cpp +++ b/src/render/backend/renderrenderpass.cpp @@ -181,7 +181,8 @@ void RenderRenderPass::sceneChangeEvent(const QSceneChangePtr &e) appendBinding(RenderParameterMapping(propertyChange->value().value<QParameterMapping *>())); } else if (propertyChange->propertyName() == QByteArrayLiteral("renderState")) { - QRenderState *renderState = propertyChange->value().value<QRenderState *>(); + QNodePtr nodePtr = propertyChange->value().value<QNodePtr>(); + QRenderState *renderState = static_cast<QRenderState *>(nodePtr.data()); appendRenderState(renderState->id(), getOrCreateBackendState(renderState)); } break; diff --git a/src/render/frontend/qrenderpass.cpp b/src/render/frontend/qrenderpass.cpp index 9482248f5..cfa6fee2e 100644 --- a/src/render/frontend/qrenderpass.cpp +++ b/src/render/frontend/qrenderpass.cpp @@ -226,7 +226,7 @@ void QRenderPass::addRenderState(QRenderState *state) if (d->m_changeArbiter != Q_NULLPTR) { QScenePropertyChangePtr change(new QScenePropertyChange(NodeAdded, QSceneChange::Node, id())); change->setPropertyName("renderState"); - change->setValue(QVariant::fromValue(QNode::clone(state))); + change->setValue(QVariant::fromValue(QNodePtr(QNode::clone(state)))); d->notifyObservers(change); } } diff --git a/tests/auto/render/renderrenderpass/tst_renderrenderpass.cpp b/tests/auto/render/renderrenderpass/tst_renderrenderpass.cpp index 79ab05c67..61465fc38 100644 --- a/tests/auto/render/renderrenderpass/tst_renderrenderpass.cpp +++ b/tests/auto/render/renderrenderpass/tst_renderrenderpass.cpp @@ -297,8 +297,7 @@ private slots: { // GIVEN QFETCH(QRenderState*, frontendState); - QScopedPointer<QRenderState> frontendStatePtr(frontendState); - Q_UNUSED(frontendStatePtr); + QNodePtr frontendStatePtr(frontendState); RenderRenderPass backend; @@ -306,7 +305,7 @@ private slots: // WHEN QScenePropertyChangePtr addChange(new QScenePropertyChange(NodeAdded, QSceneChange::Node, frontendState->id())); - addChange->setValue(QVariant::fromValue(frontendState)); + addChange->setValue(QVariant::fromValue(frontendStatePtr)); addChange->setPropertyName("renderState"); backend.sceneChangeEvent(addChange); |