diff options
author | Erik Verbruggen <erik.verbruggen@qt.io> | 2016-11-23 12:55:30 +0100 |
---|---|---|
committer | Erik Verbruggen <erik.verbruggen@qt.io> | 2016-11-24 12:28:22 +0000 |
commit | 5e6bf607ee1e466eebabb7b8114c9f5e8fc40a9e (patch) | |
tree | a4264d80b86a7d2c69a99499a55e177633fa8a28 /src/qml/jsruntime/qv4runtime.cpp | |
parent | 4b22e2093f08fb66107af4dbd8138cf9526c5786 (diff) |
V4: check for exceptions after convertThisToObject
The method_convertThisToObject method was invalidly tagged as not
needing exception checks. As a side-effect method_pushCatchScope and
method_popScope are now correctly tagged with a NoThrowEngine.
Change-Id: I11d987e62136216a29eadcbd641546311030058f
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src/qml/jsruntime/qv4runtime.cpp')
-rw-r--r-- | src/qml/jsruntime/qv4runtime.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/qml/jsruntime/qv4runtime.cpp b/src/qml/jsruntime/qv4runtime.cpp index 0a71f0000a..2026ecdfde 100644 --- a/src/qml/jsruntime/qv4runtime.cpp +++ b/src/qml/jsruntime/qv4runtime.cpp @@ -1259,7 +1259,7 @@ ReturnedValue Runtime::method_unwindException(ExecutionEngine *engine) * * Instead the push/pop pair acts as a non local scope. */ -void Runtime::method_pushWithScope(const Value &o, ExecutionEngine *engine) +void Runtime::method_pushWithScope(const Value &o, NoThrowEngine *engine) { engine->pushContext(engine->currentContext->newWithContext(o.toObject(engine))); Q_ASSERT(engine->jsStackTop == engine->currentContext + 2); @@ -1272,7 +1272,7 @@ void Runtime::method_pushCatchScope(NoThrowEngine *engine, int exceptionVarNameI Q_ASSERT(engine->jsStackTop == engine->currentContext + 2); } -void Runtime::method_popScope(ExecutionEngine *engine) +void Runtime::method_popScope(NoThrowEngine *engine) { Q_ASSERT(engine->jsStackTop == engine->currentContext + 2); engine->popContext(); |