aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/jsruntime/qv4lookup.cpp
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@qt.io>2018-04-06 23:25:51 +0200
committerLars Knoll <lars.knoll@qt.io>2018-05-02 14:18:23 +0000
commit3c090c80c58d99f1bd29493ef747a4f6fa915a71 (patch)
tree6c9f9c4dd23e57901b0dc30d66a467a1b7893688 /src/qml/jsruntime/qv4lookup.cpp
parent0660714ace53ddecfb0f9d5e238799fea5bbdb67 (diff)
Remove String dependency from InternalClass
This is required, so we can also use Symbols in the internal classes. Change-Id: I630e7aa7b8b16d5a94041f8d18515fd582f94264 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src/qml/jsruntime/qv4lookup.cpp')
-rw-r--r--src/qml/jsruntime/qv4lookup.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/qml/jsruntime/qv4lookup.cpp b/src/qml/jsruntime/qv4lookup.cpp
index cd9583cccb..b5a21ca825 100644
--- a/src/qml/jsruntime/qv4lookup.cpp
+++ b/src/qml/jsruntime/qv4lookup.cpp
@@ -442,7 +442,8 @@ bool Lookup::resolveSetter(ExecutionEngine *engine, Object *object, const Value
ScopedString name(scope, scope.engine->currentStackFrame->v4Function->compilationUnit->runtimeStrings[nameIndex]);
Heap::InternalClass *c = object->internalClass();
- uint idx = c->find(name);
+ name->makeIdentifier();
+ uint idx = c->find(name->identifier());
if (idx != UINT_MAX) {
if (object->isArrayObject() && idx == Heap::ArrayObject::LengthPropertyIndex) {
setter = arrayLengthSetter;
@@ -470,7 +471,8 @@ bool Lookup::resolveSetter(ExecutionEngine *engine, Object *object, const Value
setter = setterFallback;
return true;
}
- idx = object->internalClass()->find(name);
+ name->makeIdentifier();
+ idx = object->internalClass()->find(name->identifier());
if (idx == UINT_MAX) { // ### can this even happen?
setter = setterFallback;
return false;