summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVolker Hilsheimer <volker.hilsheimer@qt.io>2020-07-14 14:55:13 +0200
committerVolker Hilsheimer <volker.hilsheimer@qt.io>2020-07-14 15:16:53 +0200
commit88b4ca5ea5b7a20cb4d44d45eb4cb0b777bb9201 (patch)
tree4bd0829d5ca6456235cefc601566653e2e987561
parentee30bf484560010eaea880852d71f04f0f80e405 (diff)
Print warning message when we can't get type information
Task-number: QTBUG-85467 Pick-to: 5.15 Change-Id: I47920180626ea3ecbda3ea8e59600bf2f653f7fe Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Andy Shaw <andy.shaw@qt.io>
-rw-r--r--src/activeqt/container/qaxbase.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/activeqt/container/qaxbase.cpp b/src/activeqt/container/qaxbase.cpp
index 21b94e1..8be4bdf 100644
--- a/src/activeqt/container/qaxbase.cpp
+++ b/src/activeqt/container/qaxbase.cpp
@@ -2092,7 +2092,7 @@ void MetaObjectGenerator::readClassInfo()
if (dispInfo && !typelib)
dispInfo->GetContainingTypeLib(&typelib, &index);
- if (!typelib) {
+ if (!typelib && !that->control().isEmpty()) {
QSettings controls(QLatin1String("HKEY_LOCAL_MACHINE\\Software"), QSettings::NativeFormat);
QString tlid = controls.value(QLatin1String("/Classes/CLSID/") + that->control() + QLatin1String("/TypeLib/.")).toString();
QString tlfile;
@@ -2159,8 +2159,11 @@ void MetaObjectGenerator::readClassInfo()
}
}
- if (!d || !dispInfo || !cacheKey.isEmpty() || !d->tryCache)
+ if (!d || !dispInfo || !cacheKey.isEmpty() || !d->tryCache) {
+ if (disp && !dispInfo)
+ qWarning("%s: IDispatch %p does not provide interface information", Q_FUNC_INFO, disp);
return;
+ }
TYPEATTR *typeattr = nullptr;
dispInfo->GetTypeAttr(&typeattr);