aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/jsruntime/qv4engine.cpp
diff options
context:
space:
mode:
authorDmitrii Akshintsev <dmitrii.akshintsev@qt.io>2023-09-29 15:43:56 +0200
committerDmitrii Akshintsev <dmitrii.akshintsev@qt.io>2023-10-09 18:11:25 +0200
commitc7fc870aa55ed51881200e75204ab6f18ed29c6a (patch)
treee7923ef1a623581a6303de1f923c2140654ad45b /src/qml/jsruntime/qv4engine.cpp
parent72c6d70f0865cfe5a5d1f8a6dd6b9df6604c9379 (diff)
QML: Add missing metaType-s to ExecutionEngine::metaTypeFromJS
After debugging QTBUG-117384 it was found out that ExecutionEnginge is failing to convert Long and ULong types to a meta-type, because they were missing from the switch statement. Fixes: QTBUG-117384 Change-Id: Idcd7325e783df45d27323cb9d9d8372ddde25c3e Pick-to: 6.5 6.6 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Diffstat (limited to 'src/qml/jsruntime/qv4engine.cpp')
-rw-r--r--src/qml/jsruntime/qv4engine.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/qml/jsruntime/qv4engine.cpp b/src/qml/jsruntime/qv4engine.cpp
index c0a0c0e534..f28c5ef163 100644
--- a/src/qml/jsruntime/qv4engine.cpp
+++ b/src/qml/jsruntime/qv4engine.cpp
@@ -2457,6 +2457,12 @@ bool ExecutionEngine::metaTypeFromJS(const Value &value, QMetaType metaType, voi
case QMetaType::UInt:
*reinterpret_cast<uint*>(data) = value.toUInt32();
return true;
+ case QMetaType::Long:
+ *reinterpret_cast<long*>(data) = long(value.toInteger());
+ return true;
+ case QMetaType::ULong:
+ *reinterpret_cast<ulong*>(data) = ulong(value.toInteger());
+ return true;
case QMetaType::LongLong:
*reinterpret_cast<qlonglong*>(data) = qlonglong(value.toInteger());
return true;