diff options
author | Rohan McGovern <rohan.mcgovern@nokia.com> | 2010-10-04 04:21:32 (GMT) |
---|---|---|
committer | Rohan McGovern <rohan.mcgovern@nokia.com> | 2010-10-04 04:21:32 (GMT) |
commit | 5171bb1613ecc537f3f0d0962532e3ee059b8870 (patch) | |
tree | 02d0e565d8fc397573a2d35845c11ba74b912c8d /src/script | |
parent | c372896c5293633d75674a320a9b715a0501a42d (diff) | |
parent | 33b76a659b2f44fa7038e375bbfb4cfd449ae617 (diff) | |
download | Qt-5171bb1613ecc537f3f0d0962532e3ee059b8870.zip Qt-5171bb1613ecc537f3f0d0962532e3ee059b8870.tar.gz Qt-5171bb1613ecc537f3f0d0962532e3ee059b8870.tar.bz2 |
Merge remote branch 'origin/4.7' into master-from-4.7
Conflicts:
doc/src/snippets/code/doc_src_qmake-manual.qdoc
src/corelib/arch/symbian/arch.pri
src/declarative/graphicsitems/qdeclarativeflickable.cpp
src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp
src/opengl/gl2paintengineex/qtextureglyphcache_gl_p.h
tests/auto/qfontmetrics/tst_qfontmetrics.cpp
Diffstat (limited to 'src/script')
-rw-r--r-- | src/script/api/qscriptengine.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/script/api/qscriptengine.cpp b/src/script/api/qscriptengine.cpp index 0a669b5..2d5e5f4 100644 --- a/src/script/api/qscriptengine.cpp +++ b/src/script/api/qscriptengine.cpp @@ -46,6 +46,7 @@ #include "Error.h" #include "Interpreter.h" +#include "ExceptionHelpers.h" #include "PrototypeFunction.h" #include "InitializeThreading.h" #include "ObjectPrototype.h" @@ -4106,9 +4107,11 @@ bool QScriptEngine::isEvaluating() const void QScriptEngine::abortEvaluation(const QScriptValue &result) { Q_D(QScriptEngine); - - d->timeoutChecker()->setShouldAbort(true); + if (!isEvaluating()) + return; d->abortResult = result; + d->timeoutChecker()->setShouldAbort(true); + JSC::throwError(d->currentFrame, JSC::createInterruptedExecutionException(&d->currentFrame->globalData()).toObject(d->currentFrame)); } #ifndef QT_NO_QOBJECT |