From 254cf16ed4c6007a59a7cd5d64bb621430b3c01d Mon Sep 17 00:00:00 2001 From: Lars Knoll Date: Thu, 20 Nov 2014 17:46:46 +0100 Subject: Fix Object::arrayData() accessor to return a heap object Change-Id: Iffc82c2f415251d73bb7446848399b54b16589c9 Reviewed-by: Simon Hausmann --- src/qml/jsruntime/qv4arrayobject.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/qml/jsruntime/qv4arrayobject.cpp') diff --git a/src/qml/jsruntime/qv4arrayobject.cpp b/src/qml/jsruntime/qv4arrayobject.cpp index 09cd52d060..ec79d0b47d 100644 --- a/src/qml/jsruntime/qv4arrayobject.cpp +++ b/src/qml/jsruntime/qv4arrayobject.cpp @@ -293,7 +293,7 @@ ReturnedValue ArrayPrototype::method_push(CallContext *ctx) if (!ctx->d()->callData->argc) ; - else if (!instance->protoHasArray() && instance->arrayData()->length() <= len && instance->arrayData()->type() == Heap::ArrayData::Simple) { + else if (!instance->protoHasArray() && instance->arrayData()->length() <= len && instance->arrayData()->type == Heap::ArrayData::Simple) { instance->arrayData()->vtable()->putArray(instance.getPointer(), len, ctx->d()->callData->args, ctx->d()->callData->argc); len = instance->arrayData()->length(); } else { @@ -361,7 +361,7 @@ ReturnedValue ArrayPrototype::method_shift(CallContext *ctx) ScopedValue result(scope); - if (!instance->protoHasArray() && !instance->arrayData()->attrs() && instance->arrayData()->length() <= len && instance->arrayData()->type() != Heap::ArrayData::Custom) { + if (!instance->protoHasArray() && !instance->arrayData()->attrs && instance->arrayData()->length() <= len && instance->arrayData()->type != Heap::ArrayData::Custom) { result = instance->arrayData()->vtable()->pop_front(instance.getPointer()); } else { result = instance->getIndexed(0); @@ -541,8 +541,8 @@ ReturnedValue ArrayPrototype::method_unshift(CallContext *ctx) uint len = instance->getLength(); - if (!instance->protoHasArray() && !instance->arrayData()->attrs() && instance->arrayData()->length() <= len && - instance->arrayData()->type() != Heap::ArrayData::Custom) { + if (!instance->protoHasArray() && !instance->arrayData()->attrs && instance->arrayData()->length() <= len && + instance->arrayData()->type != Heap::ArrayData::Custom) { instance->arrayData()->vtable()->push_front(instance.getPointer(), ctx->d()->callData->args, ctx->d()->callData->argc); } else { ScopedValue v(scope); -- cgit v1.2.3