aboutsummaryrefslogtreecommitdiffstats
path: root/src/v4/qv4runtime.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/v4/qv4runtime.cpp')
-rw-r--r--src/v4/qv4runtime.cpp19
1 files changed, 2 insertions, 17 deletions
diff --git a/src/v4/qv4runtime.cpp b/src/v4/qv4runtime.cpp
index 6f1e1c9c89..edec0a293e 100644
--- a/src/v4/qv4runtime.cpp
+++ b/src/v4/qv4runtime.cpp
@@ -47,6 +47,7 @@
#include "qv4objectproto.h"
#include "qv4globalobject.h"
#include "qv4stringobject.h"
+#include "qv4lookup.h"
#include "private/qlocale_tools_p.h"
#include <QtCore/qmath.h>
@@ -724,23 +725,7 @@ void __qmljs_get_property_lookup(ExecutionContext *ctx, Value *result, const Val
{
Value res;
Lookup *l = ctx->lookups + lookupIndex;
- if (Object *o = object.asObject()) {
- PropertyAttributes attrs;
- Property *p = l->lookup(o, &attrs);
- if (p)
- res = attrs.isData() ? p->value : o->getValue(ctx, p, attrs);
- else
- res = Value::undefinedValue();
- } else {
- if (Managed *m = object.asManaged()) {
- res = m->get(ctx, l->name);
- } else {
- o = __qmljs_convert_to_object(ctx, object);
- res = o->get(ctx, l->name);
- }
- }
- if (result)
- *result = res;
+ l->lookupName(l, ctx, result, object);
}
void __qmljs_set_property_lookup(ExecutionContext *ctx, const Value &object, int lookupIndex, const Value &value)