diff options
Diffstat (limited to 'src/qml/jsruntime/qv4qobjectwrapper.cpp')
-rw-r--r-- | src/qml/jsruntime/qv4qobjectwrapper.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/qml/jsruntime/qv4qobjectwrapper.cpp b/src/qml/jsruntime/qv4qobjectwrapper.cpp index 4d422a3620..d37f80ab0a 100644 --- a/src/qml/jsruntime/qv4qobjectwrapper.cpp +++ b/src/qml/jsruntime/qv4qobjectwrapper.cpp @@ -1468,8 +1468,11 @@ static int MatchScore(const QV4::Value &actual, int conversionType) } if (obj->as<QV4::QQmlValueTypeWrapper>()) { - if (obj->engine()->toVariant(actual, -1).userType() == conversionType) + const QVariant v = obj->engine()->toVariant(actual, -1); + if (v.userType() == conversionType) return 0; + else if (v.canConvert(conversionType)) + return 5; return 10; } else if (conversionType == QMetaType::QJsonObject) { return 5; |