diff options
Diffstat (limited to 'ext/com/COM.c')
-rw-r--r-- | ext/com/COM.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/ext/com/COM.c b/ext/com/COM.c index 4d41bc7ed9..cdec124de4 100644 --- a/ext/com/COM.c +++ b/ext/com/COM.c @@ -124,7 +124,7 @@ PHPAPI HRESULT php_COM_invoke(comval *obj, DISPID dispIdMember, WORD wFlags, DIS if (C_ISREFD(obj)) { if (C_HASTLIB(obj)) { hr = C_TYPEINFO_VT(obj)->Invoke(C_TYPEINFO(obj), C_DISPATCH(obj), dispIdMember, wFlags, pDispParams, pVarResult, &ExceptInfo, &ArgErr); - if (FAILED(hr)) { + if (FAILED(hr) && (hr != DISP_E_EXCEPTION)) { hr = C_DISPATCH_VT(obj)->Invoke(C_DISPATCH(obj), dispIdMember, &IID_NULL, LOCALE_SYSTEM_DEFAULT, wFlags, pDispParams, pVarResult, &ExceptInfo, &ArgErr); if (SUCCEEDED(hr)) { /* |