History

Disallowed incorrect Vec3 to float cast in script engine

ksuprynowicz committed 4 years ago

Commit 4d61d4f1 parent c78ec801 file · +14 −1Browse files

Showing the changes to libraries/script-engine/src/qtscript/ScriptEngineQtScript_cast.cpp (1 of 1 file). Show all

Unified · Split

libraries/script-engine/src/qtscript/ScriptEngineQtScript_cast.cpp+14−1
@@ -4,6 +4,7 @@ · 3 unmodified lines
4//4//
5// Created by Heather Anderson 12/9/20215// Created by Heather Anderson 12/9/2021
6// Copyright 2021 Vircadia contributors.6// Copyright 2021 Vircadia contributors.
7// Copyright 2022 Overte e.V.
7//8//
8// Distributed under the Apache License, Version 2.0.9// Distributed under the Apache License, Version 2.0.
9// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html10// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
@@ -278,17 +279,26 @@ bool ScriptEngineQtScript::castValueToVariant(const QScriptValue& val, QVariant& · 268 unmodified lines
278 break;279 break;
279 case QMetaType::UInt:280 case QMetaType::UInt:
280 case QMetaType::ULong:281 case QMetaType::ULong:
282 if ( val.isArray() || val.isObject() ){
283 return false;
284 }
281 dest = QVariant::fromValue(val.toUInt32());285 dest = QVariant::fromValue(val.toUInt32());
282 break;286 break;
283 case QMetaType::Int:287 case QMetaType::Int:
284 case QMetaType::Long:288 case QMetaType::Long:
285 case QMetaType::Short:289 case QMetaType::Short:
290 if ( val.isArray() || val.isObject() ){
291 return false;
292 }
286 dest = QVariant::fromValue(val.toInt32());293 dest = QVariant::fromValue(val.toInt32());
287 break;294 break;
288 case QMetaType::Double:295 case QMetaType::Double:
289 case QMetaType::Float:296 case QMetaType::Float:
290 case QMetaType::ULongLong:297 case QMetaType::ULongLong:
291 case QMetaType::LongLong:298 case QMetaType::LongLong:
299 if ( val.isArray() || val.isObject() ){
300 return false;
301 }
292 dest = QVariant::fromValue(val.toNumber());302 dest = QVariant::fromValue(val.toNumber());
293 break;303 break;
294 case QMetaType::QString:304 case QMetaType::QString:
@@ -296,6 +306,9 @@ bool ScriptEngineQtScript::castValueToVariant(const QScriptValue& val, QVariant& · 1 unmodified line
296 dest = QVariant::fromValue(val.toString());306 dest = QVariant::fromValue(val.toString());
297 break;307 break;
298 case QMetaType::UShort:308 case QMetaType::UShort:
309 if ( val.isArray() || val.isObject() ){
310 return false;
311 }
299 dest = QVariant::fromValue(val.toUInt16());312 dest = QVariant::fromValue(val.toUInt16());
300 break;313 break;
301 case QMetaType::QObjectStar:314 case QMetaType::QObjectStar:
@@ -444,4 +457,4 @@ QScriptValue ScriptEngineQtScript::castVariantToValue(const QVariant& val) { · 142 unmodified lines
444 // just do a generic variant457 // just do a generic variant
445 return QScriptEngine::newVariant(val);458 return QScriptEngine::newVariant(val);
446 }459 }
447}460}

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t