summaryrefslogtreecommitdiff
path: root/ext/com/COM.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/com/COM.c')
-rw-r--r--ext/com/COM.c2
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)) {
/*