diff options
author | Simon Hausmann <simon.hausmann@digia.com> | 2014-03-02 20:35:57 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-03-02 22:29:27 +0100 |
commit | 06479ddfe3a9319fd371cd50f4d2f2316d51055a (patch) | |
tree | 6239592028143718b64a9e6621c59e8185a7698a /src/quick/util | |
parent | 57665bf23a00eca240d26c6267ca2bed1a052c0b (diff) |
[new compiler] Add the correct object index to the custom parser
Without the correct index the calls to astForBinding run out of bounds. Fixes
tst_qqmllistmodel crash.
Change-Id: I6fb8b77866cbf247e7373cdbece6833c92be3615
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Diffstat (limited to 'src/quick/util')
-rw-r--r-- | src/quick/util/qquickpropertychanges.cpp | 3 | ||||
-rw-r--r-- | src/quick/util/qquickpropertychanges_p.h | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/src/quick/util/qquickpropertychanges.cpp b/src/quick/util/qquickpropertychanges.cpp index 7bb318fd79..916a605999 100644 --- a/src/quick/util/qquickpropertychanges.cpp +++ b/src/quick/util/qquickpropertychanges.cpp @@ -331,8 +331,9 @@ QQuickPropertyChangesParser::compile(const QList<QQmlCustomParserProperty> &prop return rv; } -QByteArray QQuickPropertyChangesParser::compile(const QV4::CompiledData::QmlUnit *qmlUnit, const QList<const QV4::CompiledData::Binding *> &props) +QByteArray QQuickPropertyChangesParser::compile(const QV4::CompiledData::QmlUnit *qmlUnit, int objectIndex, const QList<const QV4::CompiledData::Binding *> &props) { + Q_UNUSED(objectIndex) QList<QPair<QString, const QV4::CompiledData::Binding *> > data; for (int ii = 0; ii < props.count(); ++ii) compileList(data, QString(), qmlUnit, props.at(ii)); diff --git a/src/quick/util/qquickpropertychanges_p.h b/src/quick/util/qquickpropertychanges_p.h index 081ea72862..5073f3aca5 100644 --- a/src/quick/util/qquickpropertychanges_p.h +++ b/src/quick/util/qquickpropertychanges_p.h @@ -96,7 +96,7 @@ public: void compileList(QList<QPair<QString, const QV4::CompiledData::Binding *> > &list, const QString &pre, const QV4::CompiledData::QmlUnit *qmlUnit, const QV4::CompiledData::Binding *binding); virtual QByteArray compile(const QList<QQmlCustomParserProperty> &); - virtual QByteArray compile(const QV4::CompiledData::QmlUnit *qmlUnit, const QList<const QV4::CompiledData::Binding *> &props); + virtual QByteArray compile(const QV4::CompiledData::QmlUnit *qmlUnit, int objectIndex, const QList<const QV4::CompiledData::Binding *> &props); virtual void setCustomData(QObject *, const QByteArray &); }; |