From 2d6b08bd17377aa6bcb663029a196a8d19cac6ac Mon Sep 17 00:00:00 2001 From: Lars Knoll Date: Fri, 11 May 2018 21:10:11 +0200 Subject: Give for loops a per-iteration context as well Regular for loops also have a per iteration context for lexically declared variables as well. Change-Id: I35cb58bfb198c7dc32d70f41ea0ced7ddefcc37e Reviewed-by: Simon Hausmann --- src/qml/jsruntime/qv4runtime.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/qml/jsruntime/qv4runtime.cpp') diff --git a/src/qml/jsruntime/qv4runtime.cpp b/src/qml/jsruntime/qv4runtime.cpp index 8bf6d6b73f..986684302c 100644 --- a/src/qml/jsruntime/qv4runtime.cpp +++ b/src/qml/jsruntime/qv4runtime.cpp @@ -1230,6 +1230,12 @@ ReturnedValue Runtime::method_createBlockContext(ExecutionContext *parent, int i return parent->newBlockContext(e->currentStackFrame, index)->asReturnedValue(); } +ReturnedValue Runtime::method_cloneBlockContext(ExecutionContext *previous) +{ + return ExecutionContext::cloneBlockContext(static_cast(previous->d()))->asReturnedValue(); +} + + ReturnedValue Runtime::method_createScriptContext(ExecutionEngine *engine, int index) { Q_ASSERT(engine->currentStackFrame->context()->d()->type == Heap::ExecutionContext::Type_GlobalContext || -- cgit v1.2.3