diff options
author | Lars Knoll <lars.knoll@digia.com> | 2013-05-20 23:51:45 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@digia.com> | 2013-05-21 10:11:43 +0200 |
commit | 7fe54ee6d6eb44c630038229eb9a4bb1780eec77 (patch) | |
tree | 20e0278387688936a060eaed33273ca7bb5e89c5 /src/qml/types/qquickworkerscript.cpp | |
parent | e1a6612d3a4528fee8854c274232fc4966d65237 (diff) |
Convert the remaining TryCatch statements to use QV4::Exception
v8::Script::Run doesn't catch the exception anymore. Instead we handle
this on the calling side, removing all needs for v8::TryCatch.
Change-Id: I946269a6734f50c728c4f153c00cd19db48f1a6a
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/types/qquickworkerscript.cpp')
-rw-r--r-- | src/qml/types/qquickworkerscript.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/qml/types/qquickworkerscript.cpp b/src/qml/types/qquickworkerscript.cpp index 5f072d16cd..9f31b711d0 100644 --- a/src/qml/types/qquickworkerscript.cpp +++ b/src/qml/types/qquickworkerscript.cpp @@ -384,15 +384,15 @@ void QQuickWorkerScriptEnginePrivate::processLoad(int id, const QUrl &url) // XXX ??? // workerEngine->baseUrl = url; - v8::TryCatch tc; v8::Handle<v8::Script> program = workerEngine->qmlModeCompile(sourceCode, url.toString()); - if (!tc.HasCaught()) + QV4::ExecutionContext *ctx = QV8Engine::getV4(workerEngine)->current; + try { program->Run(activation); - - if (tc.HasCaught()) { + } catch (QV4::Exception &e) { + e.accept(ctx); QQmlError error; - QQmlExpressionPrivate::exceptionToError(tc.Message(), error); + QQmlExpressionPrivate::exceptionToError(e, error); reportScriptException(script, error); } } else { |