diff options
author | Prasanth Ullattil <prasanth.ullattil@nokia.com> | 2010-09-30 11:45:00 (GMT) |
---|---|---|
committer | Prasanth Ullattil <prasanth.ullattil@nokia.com> | 2010-09-30 11:57:43 (GMT) |
commit | fc50d7ecaacfbfef1dbefd6ffdc083cb66c5633c (patch) | |
tree | b259ce27190855f2dcfb241a2c7694e8e86d53f3 /src/activeqt/shared | |
parent | 9e9a7bc29319d52c3e563bc2c5282cb7e6890eba (diff) | |
download | Qt-fc50d7ecaacfbfef1dbefd6ffdc083cb66c5633c.zip Qt-fc50d7ecaacfbfef1dbefd6ffdc083cb66c5633c.tar.gz Qt-fc50d7ecaacfbfef1dbefd6ffdc083cb66c5633c.tar.bz2 |
QAxBase::dynamicCall() returns invalid QVariant
Starting from 4.7.0, QVariant is recognized as a standard type by the
meta type system. ActiveQt needs to consider this while converting
COM VARIANT types to a QVariant.
Task-number: QTBUG-13845
Reviewed-by: Volker Hilsheimer
Reviewed-by: Olivier Goffart
Diffstat (limited to 'src/activeqt/shared')
-rw-r--r-- | src/activeqt/shared/qaxtypes.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/activeqt/shared/qaxtypes.cpp b/src/activeqt/shared/qaxtypes.cpp index 957733e..ff21a9f 100644 --- a/src/activeqt/shared/qaxtypes.cpp +++ b/src/activeqt/shared/qaxtypes.cpp @@ -1376,8 +1376,10 @@ QVariant VARIANTToQVariant(const VARIANT &arg, const QByteArray &typeName, uint } QVariant::Type proptype = (QVariant::Type)type; - if (proptype == QVariant::Invalid && !typeName.isEmpty()) - proptype = QVariant::nameToType(typeName); + if (proptype == QVariant::Invalid && !typeName.isEmpty()) { + if (typeName != "QVariant") + proptype = QVariant::nameToType(typeName); + } if (proptype != QVariant::LastType && proptype != QVariant::Invalid && var.type() != proptype) { if (var.canConvert(proptype)) { QVariant oldvar = var; |