summaryrefslogtreecommitdiffstats
path: root/src/render/framegraph
diff options
context:
space:
mode:
authorPaul Lemire <paul.lemire@kdab.com>2015-10-01 09:43:50 +0200
committerPaul Lemire <paul.lemire@kdab.com>2015-10-14 16:01:22 +0000
commiteecbaaeadbbe25174d3daa322335265d3b9d5c8e (patch)
treec0b2df40dd572bcf07bf3d002fe15cfed49aedc4 /src/render/framegraph
parentcebeb3c04823d68fea7475988351ac2c6473523a (diff)
QSortMethod: only send criterion node id and not node pointers
Change-Id: Ief517b0554a400427b211b8b05f96926307dbbe3 Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
Diffstat (limited to 'src/render/framegraph')
-rw-r--r--src/render/framegraph/qsortmethod.cpp4
-rw-r--r--src/render/framegraph/sortmethod.cpp8
2 files changed, 6 insertions, 6 deletions
diff --git a/src/render/framegraph/qsortmethod.cpp b/src/render/framegraph/qsortmethod.cpp
index 9253326f2..2eece78f1 100644
--- a/src/render/framegraph/qsortmethod.cpp
+++ b/src/render/framegraph/qsortmethod.cpp
@@ -91,7 +91,7 @@ void QSortMethod::addCriterion(QSortCriterion *criterion)
if (d->m_changeArbiter != Q_NULLPTR) {
QScenePropertyChangePtr propertyChange(new QScenePropertyChange(NodeAdded, QSceneChange::Node, id()));
propertyChange->setPropertyName("sortCriterion");
- propertyChange->setValue(QVariant::fromValue(criterion));
+ propertyChange->setValue(QVariant::fromValue(criterion->id()));
d->notifyObservers(propertyChange);
}
}
@@ -103,7 +103,7 @@ void QSortMethod::removeCriterion(QSortCriterion *criterion)
if (d->m_changeArbiter != Q_NULLPTR) {
QScenePropertyChangePtr propertyChange(new QScenePropertyChange(NodeRemoved, QSceneChange::Node, id()));
propertyChange->setPropertyName("sortCriterion");
- propertyChange->setValue(QVariant::fromValue(criterion));
+ propertyChange->setValue(QVariant::fromValue(criterion->id()));
d->notifyObservers(propertyChange);
}
d->m_criteria.removeOne(criterion);
diff --git a/src/render/framegraph/sortmethod.cpp b/src/render/framegraph/sortmethod.cpp
index d7bcb177b..32cba9307 100644
--- a/src/render/framegraph/sortmethod.cpp
+++ b/src/render/framegraph/sortmethod.cpp
@@ -63,12 +63,12 @@ void SortMethod::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e)
{
QScenePropertyChangePtr propertyChange = qSharedPointerCast<QScenePropertyChange>(e);
if (propertyChange->propertyName() == QByteArrayLiteral("sortCriterion")) {
- QSortCriterion *c = propertyChange->value().value<QSortCriterion *>();
- if (c != Q_NULLPTR) {
+ const QNodeId cId = propertyChange->value().value<QNodeId>();
+ if (!cId.isNull()) {
if (e->type() == NodeAdded)
- m_criteria.append(c->id());
+ m_criteria.append(cId);
else if (e->type() == NodeRemoved)
- m_criteria.removeAll(c->id());
+ m_criteria.removeAll(cId);
}
} else if (propertyChange->propertyName() == QByteArrayLiteral("enabled") && e->type() == NodeUpdated) {
setEnabled(propertyChange->value().toBool());