aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/jsruntime/qv4serialize.cpp
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@digia.com>2013-09-11 21:48:23 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-09-18 13:13:36 +0200
commit6c9f1c8ed93374c16ca6ac540f39e98b451be0d8 (patch)
tree476d0046c6016a8cd62bfc29ed9697d98e98f738 /src/qml/jsruntime/qv4serialize.cpp
parentbdb27b96acbd38531879378c48959a5a1cd60963 (diff)
Use a ReturnedValue for Managed::getIndexed()
Change-Id: I0371ed21c4ef99564d3ffa1082dd109e890a78bf Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/jsruntime/qv4serialize.cpp')
-rw-r--r--src/qml/jsruntime/qv4serialize.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/qml/jsruntime/qv4serialize.cpp b/src/qml/jsruntime/qv4serialize.cpp
index b183baf0c2..0bd3f79a5b 100644
--- a/src/qml/jsruntime/qv4serialize.cpp
+++ b/src/qml/jsruntime/qv4serialize.cpp
@@ -189,7 +189,7 @@ void Serialize::serialize(QByteArray &data, const QV4::Value &v, QV8Engine *engi
reserve(data, sizeof(quint32) + length * sizeof(quint32));
push(data, valueheader(WorkerArray, length));
for (uint32_t ii = 0; ii < length; ++ii)
- serialize(data, array->getIndexed(ii), engine);
+ serialize(data, QV4::Value::fromReturnedValue(array->getIndexed(ii)), engine);
} else if (v.isInteger()) {
reserve(data, 2 * sizeof(quint32));
push(data, valueheader(WorkerInt32));
@@ -252,7 +252,7 @@ void Serialize::serialize(QByteArray &data, const QV4::Value &v, QV8Engine *engi
push(data, valueheader(WorkerSequence, length));
serialize(data, QV4::Value::fromInt32(QV4::SequencePrototype::metaTypeForSequence(o)), engine); // sequence type
for (uint32_t ii = 0; ii < seqLength; ++ii)
- serialize(data, o->getIndexed(ii), engine); // sequence elements
+ serialize(data, QV4::Value::fromReturnedValue(o->getIndexed(ii)), engine); // sequence elements
return;
}
@@ -267,14 +267,14 @@ void Serialize::serialize(QByteArray &data, const QV4::Value &v, QV8Engine *engi
push(data, valueheader(WorkerObject, length));
QV4::ScopedValue val(scope);
+ QV4::ScopedValue s(scope);
for (quint32 ii = 0; ii < length; ++ii) {
- QV4::String *s = properties->getIndexed(ii).asString();
- serialize(data, QV4::Value::fromString(s), engine);
+ s = properties->getIndexed(ii);
+ serialize(data, s, engine);
- bool hasCaught = false;
QV4::ExecutionContext *ctx = v4->current;
try {
- val = o->get(s);
+ val = o->get(s->asString());
} catch (QV4::Exception &e) {
e.accept(ctx);
}