summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHarald Radi <phanto@php.net>2003-03-27 19:56:59 +0000
committerHarald Radi <phanto@php.net>2003-03-27 19:56:59 +0000
commitf629da9384c717df45ed739eba85ea0e3978264e (patch)
treee64aeb7b89523383ff3e55785d4c0c861c242ec2
parent3db5278dcc0929e45a55e907e35409f5c2b563a2 (diff)
downloadphp-git-f629da9384c717df45ed739eba85ea0e3978264e.tar.gz
MFB ext/com
fix #22899 invoke is called twice
-rw-r--r--ext/rpc/com/com_wrapper.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/ext/rpc/com/com_wrapper.c b/ext/rpc/com/com_wrapper.c
index 04e9a74f08..5892611485 100644
--- a/ext/rpc/com/com_wrapper.c
+++ b/ext/rpc/com/com_wrapper.c
@@ -89,7 +89,7 @@ ZEND_API HRESULT php_COM_invoke(comval *obj, DISPID dispIdMember, WORD wFlags,
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)) {