diff options
Diffstat (limited to 'src/declarative/qml/qmlvmemetaobject.cpp')
-rw-r--r-- | src/declarative/qml/qmlvmemetaobject.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/declarative/qml/qmlvmemetaobject.cpp b/src/declarative/qml/qmlvmemetaobject.cpp index 3b784a4..ec269b8 100644 --- a/src/declarative/qml/qmlvmemetaobject.cpp +++ b/src/declarative/qml/qmlvmemetaobject.cpp @@ -168,7 +168,10 @@ int QmlVMEMetaObject::metaCall(QMetaObject::Call c, int id, void **a) return id; } } else if(c == QMetaObject::InvokeMetaMethod) { - if(id >= baseSlot && id < (baseSlot + slotCount)) { + if (id >= baseSig && (baseSlot == -1 || id < baseSlot)) { + QMetaObject::activate(object, id, a); + return id; + } else if (id >= baseSlot && id < (baseSlot + slotCount)) { int idx = id - baseSlot + slotDataIdx; QmlContext *ctxt = qmlContext(object); QmlExpression expr(ctxt, slotData->at(idx), object); |