diff options
author | Lars Knoll <lars.knoll@digia.com> | 2013-09-14 11:25:02 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-09-18 13:14:13 +0200 |
commit | f79df5da0769836bc866b470cdac43d6363dc7db (patch) | |
tree | 28deb1584b6c43dca92b39328bcf43099a92fcd6 /src/qml/jsruntime/qv4qobjectwrapper.cpp | |
parent | e4e90923c93adfafb23c81be7359e8df2a500b4f (diff) |
Convert more methods to return a Returned<>
Change-Id: If294c9c4f574824c308b63a11da1337226180105
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/jsruntime/qv4qobjectwrapper.cpp')
-rw-r--r-- | src/qml/jsruntime/qv4qobjectwrapper.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/qml/jsruntime/qv4qobjectwrapper.cpp b/src/qml/jsruntime/qv4qobjectwrapper.cpp index abff3ac93d..d774014073 100644 --- a/src/qml/jsruntime/qv4qobjectwrapper.cpp +++ b/src/qml/jsruntime/qv4qobjectwrapper.cpp @@ -323,8 +323,9 @@ ReturnedValue QObjectWrapper::getQmlProperty(ExecutionContext *ctx, QQmlContextD Q_ASSERT(vmemo); return vmemo->vmeMethod(result->coreIndex); } else if (result->isV4Function()) { + QV4::Scoped<QV4::Object> qmlcontextobject(scope, ctx->engine->qmlContextObject()); return QV4::QObjectMethod::create(ctx->engine->rootContext, m_object, result->coreIndex, - QV4::Value::fromObject(ctx->engine->qmlContextObject())).asReturnedValue(); + qmlcontextobject.asValue()).asReturnedValue(); } else if (result->isSignalHandler()) { QV4::QmlSignalHandler *handler = new (ctx->engine->memoryManager) QV4::QmlSignalHandler(ctx->engine, m_object, result->coreIndex); @@ -1603,13 +1604,13 @@ QV4::ReturnedValue CallArgument::toValue(QV8Engine *engine) // XXX Can this be made more by using Array as a prototype and implementing // directly against QList<QObject*>? QList<QObject *> &list = *qlistPtr; - QV4::ArrayObject *array = v4->newArrayObject(); + QV4::Scoped<ArrayObject> array(scope, v4->newArrayObject()); array->arrayReserve(list.count()); array->arrayDataLen = list.count(); for (int ii = 0; ii < list.count(); ++ii) array->arrayData[ii].value = Value::fromReturnedValue(QV4::QObjectWrapper::wrap(v4, list.at(ii))); array->setArrayLengthUnchecked(list.count()); - return QV4::Value::fromObject(array).asReturnedValue(); + return array.asReturnedValue(); } else if (type == qMetaTypeId<QQmlV4Handle>()) { return handlePtr->toValue().asReturnedValue(); } else if (type == QMetaType::QJsonArray) { |