summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2020-02-08 03:02:30 +0100
committerQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2020-02-08 03:02:30 +0100
commitbb8cf882283f22dc0ad86e634e03b06a80c0f832 (patch)
treee3c2845ef19afc99784a915a9e8d404372b2680b /src
parent38cf3e3d10f7fbe42f9dd0ba54186a4ae62f3f7f (diff)
parent34d89d9b72198f0e0f085d7445db5709a8a130b3 (diff)
Merge remote-tracking branch 'origin/5.15' into dev
Diffstat (limited to 'src')
-rw-r--r--src/activeqt/container/qaxbase.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/activeqt/container/qaxbase.cpp b/src/activeqt/container/qaxbase.cpp
index 704aa91..fef77d8 100644
--- a/src/activeqt/container/qaxbase.cpp
+++ b/src/activeqt/container/qaxbase.cpp
@@ -4016,6 +4016,12 @@ bool QAxBase::dynamicCallHelper(const char *name, void *inout, QList<QVariant> &
UINT argerr = 0;
HRESULT hres = Invoke(disp, dispid, IID_NULL, LOCALE_USER_DEFAULT, disptype, &params, res, &excepinfo, &argerr);
+ if (hres == DISP_E_MEMBERNOTFOUND && (disptype & DISPATCH_METHOD) != 0) {
+ // Retry with pVarResult = 0, workaround for "Word.Application.WordBasic.DisableAutoMacros(bool)"
+ memset(&excepinfo, 0, sizeof(excepinfo));
+ argerr = 0;
+ hres = Invoke(disp, dispid, IID_NULL, LOCALE_USER_DEFAULT, disptype, &params, nullptr, &excepinfo, &argerr);
+ }
if (disptype == (DISPATCH_METHOD|DISPATCH_PROPERTYGET) && hres == S_OK && varc) {
for (int i = 0; i < varc; ++i)