aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml
diff options
context:
space:
mode:
authorUlf Hermann <[email protected]>2024-11-05 16:30:36 +0100
committerUlf Hermann <[email protected]>2024-11-06 10:00:07 +0100
commit9ae34fc5936d6124b350d8961b8c78ca7123484f (patch)
tree47e793b7dce4f068e58ccbd424bf16b4dcbada93 /src/qml
parent05b783617ff897c5c7b94bd9df19d0ff26c20396 (diff)
QtQml: Fix two-classes lookup with first memberData, then inline
We can use the same lookup function as for the first inline, then memberData case, but we have to store the ICs and offsets in reverse order. Amends commit 72bf9286d759ef7ed9c358536b7f1fd95b6ba851. Fixes: QTBUG-130718 Change-Id: I3062fa740faa7693625523370014cb06653a79ba Reviewed-by: Olivier De Cannière <[email protected]>
Diffstat (limited to 'src/qml')
-rw-r--r--src/qml/jsruntime/qv4lookup.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/qml/jsruntime/qv4lookup.cpp b/src/qml/jsruntime/qv4lookup.cpp
index 29212dfb70..beebdcad6b 100644
--- a/src/qml/jsruntime/qv4lookup.cpp
+++ b/src/qml/jsruntime/qv4lookup.cpp
@@ -187,7 +187,8 @@ ReturnedValue Lookup::getterTwoClasses(Lookup *lookup, ExecutionEngine *engine,
case Call::Getter0MemberData:
switch (second.call) {
case Call::Getter0Inline:
- setupObjectLookupTwoClasses(lookup, *lookup, second);
+ // NB: Reversed order, so that we can use the same lookup function as above.
+ setupObjectLookupTwoClasses(lookup, second, *lookup);
lookup->call = Call::Getter0InlineGetter0MemberData;
return result;
case Call::Getter0MemberData: