aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/util/qquickglobal.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/quick/util/qquickglobal.cpp')
-rw-r--r--src/quick/util/qquickglobal.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/quick/util/qquickglobal.cpp b/src/quick/util/qquickglobal.cpp
index 1af04505b3..c08719dec8 100644
--- a/src/quick/util/qquickglobal.cpp
+++ b/src/quick/util/qquickglobal.cpp
@@ -394,15 +394,18 @@ public:
if (!array)
return QMatrix4x4();
+ QV4::Scope scope(array->engine());
+
if (array->arrayLength() != 16)
return QMatrix4x4();
float matVals[16];
+ QV4::ScopedValue v(scope);
for (quint32 i = 0; i < 16; ++i) {
- QV4::Value v = array->getIndexed(i);
- if (!v.isNumber())
+ v = array->getIndexed(i);
+ if (!v->isNumber())
return QMatrix4x4();
- matVals[i] = v.asDouble();
+ matVals[i] = v->asDouble();
}
if (ok) *ok = true;