diff options
Diffstat (limited to 'src/declarative/qml/qmlcompiler.cpp')
-rw-r--r-- | src/declarative/qml/qmlcompiler.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/declarative/qml/qmlcompiler.cpp b/src/declarative/qml/qmlcompiler.cpp index 8e92eb4..81ebd86 100644 --- a/src/declarative/qml/qmlcompiler.cpp +++ b/src/declarative/qml/qmlcompiler.cpp @@ -2340,6 +2340,7 @@ bool QmlCompiler::compileAlias(QMetaObjectBuilder &builder, QByteArray typeName; int propIdx = -1; + int flags = 0; bool writable = false; if (alias.count() == 2) { propIdx = idObject->metaObject()->indexOfProperty(alias.at(1).toUtf8().constData()); @@ -2359,8 +2360,12 @@ bool QmlCompiler::compileAlias(QMetaObjectBuilder &builder, typeName += "*"; } + if (typeName.endsWith('*')) + flags |= QML_ALIAS_FLAG_PTR; + data.append((const char *)&idObject->idIndex, sizeof(idObject->idIndex)); data.append((const char *)&propIdx, sizeof(propIdx)); + data.append((const char *)&flags, sizeof(flags)); builder.addSignal(prop.name + "Changed()"); QMetaPropertyBuilder propBuilder = |