Merge remote-tracking branch 'origin/5.3' into dev
authorSimon Hausmann <simon.hausmann@digia.com>
Sat, 26 Jul 2014 07:14:44 +0000 (09:14 +0200)
committerSimon Hausmann <simon.hausmann@digia.com>
Sat, 26 Jul 2014 11:21:16 +0000 (13:21 +0200)
Conflicts:
src/qml/compiler/qv4ssa.cpp
src/qml/jsruntime/qv4arrayobject.cpp
src/qml/jsruntime/qv4engine.cpp

Change-Id: Ie3ef6202b6a3a8521971e1be10c40c6a2db6989c

13 files changed:
1  2 
src/qml/compiler/qv4ssa.cpp
src/qml/jsruntime/qv4arrayobject.cpp
src/qml/jsruntime/qv4engine.cpp
src/qml/qml/qqmlcomponent.cpp
src/qmltest/quicktestresult.cpp
src/quick/items/qquickgridview.cpp
src/quick/items/qquickitemview.cpp
src/quick/items/qquickitemview_p_p.h
src/quick/items/qquicklistview.cpp
src/quick/items/qquickpathview.cpp
src/quick/items/qquickwindow.cpp
src/quick/scenegraph/util/qsgatlastexture.cpp
tests/auto/quick/qquicklistview/tst_qquicklistview.cpp

Simple merge
@@@ -366,8 -371,8 +366,8 @@@ ReturnedValue ArrayPrototype::method_sh
  
      ScopedValue result(scope);
  
-     if (!instance->protoHasArray() && !instance->arrayData()->hasAttributes() && instance->arrayData()->length() <= len) {
 -    if (!instance->protoHasArray() && !instance->arrayData->hasAttributes() && instance->arrayData->length() <= len && instance->arrayData->type != ArrayData::Custom) {
 -        result = instance->arrayData->vtable()->pop_front(instance.getPointer());
++    if (!instance->protoHasArray() && !instance->arrayData()->hasAttributes() && instance->arrayData()->length() <= len && instance->arrayData()->type() != ArrayData::Custom) {
 +        result = instance->arrayData()->vtable()->pop_front(instance.getPointer());
      } else {
          result = instance->getIndexed(0);
          if (scope.hasException())
@@@ -545,8 -550,8 +545,8 @@@ ReturnedValue ArrayPrototype::method_un
  
      uint len = instance->getLength();
  
-     if (!instance->protoHasArray() && !instance->arrayData()->hasAttributes() && instance->arrayData()->length() <= len) {
 -    if (!instance->protoHasArray() && !instance->arrayData->hasAttributes() && instance->arrayData->length() <= len && instance->arrayData->type != ArrayData::Custom) {
 -        instance->arrayData->vtable()->push_front(instance.getPointer(), ctx->callData->args, ctx->callData->argc);
++    if (!instance->protoHasArray() && !instance->arrayData()->hasAttributes() && instance->arrayData()->length() <= len && instance->arrayData()->type() != ArrayData::Custom) {
 +        instance->arrayData()->vtable()->push_front(instance.getPointer(), ctx->d()->callData->args, ctx->d()->callData->argc);
      } else {
          ScopedValue v(scope);
          for (uint k = len; k > 0; --k) {
@@@ -851,8 -839,12 +851,12 @@@ void ExecutionEngine::markObjects(
  
      ExecutionContext *c = currentContext();
      while (c) {
-         c->mark(this);
 -        Q_ASSERT(c->inUse);
 -        if (!c->markBit) {
 -            c->markBit = 1;
++        Q_ASSERT(c->inUse());
++        if (!c->markBit()) {
++            c->d()->markBit = 1;
+             c->markObjects(c, this);
+         }
 -        c = c->parent;
 +        c = c->d()->parent;
      }
  
      id_empty->mark(this);
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge