diff options
author | Lars Knoll <lars.knoll@digia.com> | 2013-09-11 14:36:01 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-09-18 13:13:21 +0200 |
commit | 002e6105f61269f1474de878ccdb26205e5b226e (patch) | |
tree | ead1d10b7d8aa2537e7073327d9d0d9ce591c995 /src/qml/types/qquickworkerscript.cpp | |
parent | 1a2a83f80ba4ecc28eba72af57c81bd43a45946c (diff) |
Require a ValueScope for ScopedCallData as well
This brings things more in line with ScopedValue, and
also simplifies cleanup of Scoped values.
Change-Id: If5f1466b4e13c629d56c1e7c638937f61ba48f77
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/types/qquickworkerscript.cpp')
-rw-r--r-- | src/qml/types/qquickworkerscript.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/qml/types/qquickworkerscript.cpp b/src/qml/types/qquickworkerscript.cpp index 42548e6ad6..481bc110e8 100644 --- a/src/qml/types/qquickworkerscript.cpp +++ b/src/qml/types/qquickworkerscript.cpp @@ -228,13 +228,14 @@ void QQuickWorkerScriptEnginePrivate::WorkerEngine::init() "}); "\ "})" + QV4::ValueScope scope(m_v4Engine); onmessage = QV4::Script(m_v4Engine->rootContext, CALL_ONMESSAGE_SCRIPT).run(); QV4::Script createsendscript(m_v4Engine->rootContext, SEND_MESSAGE_CREATE_SCRIPT); QV4::FunctionObject *createsendconstructor = createsendscript.run().asFunctionObject(); QV4::Value function = QV4::Value::fromObject(m_v4Engine->newBuiltinFunction(m_v4Engine->rootContext, m_v4Engine->newString(QStringLiteral("sendMessage")), QQuickWorkerScriptEnginePrivate::sendMessage)); - QV4::ScopedCallData callData(m_v4Engine, 1); + QV4::ScopedCallData callData(scope, 1); callData->args[0] = function; callData->thisObject = global(); createsend = createsendconstructor->call(callData); @@ -249,7 +250,7 @@ QV4::Value QQuickWorkerScriptEnginePrivate::WorkerEngine::sendFunction(int id) QV4::ScopedValue v(scope); try { - QV4::ScopedCallData callData(m_v4Engine, 1); + QV4::ScopedCallData callData(scope, 1); callData->args[0] = QV4::Value::fromInt32(id); callData->thisObject = global(); v = f->call(callData); @@ -355,7 +356,7 @@ void QQuickWorkerScriptEnginePrivate::processMessage(int id, const QByteArray &d QV4::ScopedValue value(scope, QV4::Serialize::deserialize(data, workerEngine)); try { - QV4::ScopedCallData callData(ctx->engine, 2); + QV4::ScopedCallData callData(scope, 2); callData->thisObject = workerEngine->global(); callData->args[0] = script->object.value(); callData->args[1] = value; |