summaryrefslogtreecommitdiff
path: root/ext/rpc/com/com_wrapper.c
diff options
context:
space:
mode:
authorHarald Radi <phanto@php.net>2001-05-09 00:00:01 +0000
committerHarald Radi <phanto@php.net>2001-05-09 00:00:01 +0000
commitffefed197226f469d99b15e2b493d9bc19d47e1c (patch)
tree6672bee3b7620492fa9a6485c1e2aa394302199c /ext/rpc/com/com_wrapper.c
parent383c757a43f9edbf49017a9fb856e5d5b00c1939 (diff)
downloadphp-git-ffefed197226f469d99b15e2b493d9bc19d47e1c.tar.gz
E_ERROR instead of E_WARNING on nullpointer exceptions
Diffstat (limited to 'ext/rpc/com/com_wrapper.c')
-rw-r--r--ext/rpc/com/com_wrapper.c20
1 files changed, 13 insertions, 7 deletions
diff --git a/ext/rpc/com/com_wrapper.c b/ext/rpc/com/com_wrapper.c
index 70906964ad..44b35fb4c7 100644
--- a/ext/rpc/com/com_wrapper.c
+++ b/ext/rpc/com/com_wrapper.c
@@ -131,13 +131,19 @@ PHPAPI HRESULT php_COM_set(i_dispatch *obj, IDispatch FAR* pDisp, int cleanup)
{
HRESULT hr;
- obj->i.dispatch = pDisp;
- obj->typelib = !FAILED(obj->i.dispatch->lpVtbl->GetTypeInfo(obj->i.dispatch, 0, LANG_NEUTRAL, &(obj->i.typeinfo)));
-
- if(cleanup) {
- pDisp = NULL;
- } else {
- hr = obj->i.dispatch->lpVtbl->AddRef(obj->i.dispatch);
+ if((obj->i.dispatch = pDisp) == NULL)
+ {
+ php_error(E_ERROR, "NULL pointer exception");
+ }
+ else
+ {
+ obj->typelib = !FAILED(obj->i.dispatch->lpVtbl->GetTypeInfo(obj->i.dispatch, 0, LANG_NEUTRAL, &(obj->i.typeinfo)));
+
+ if(cleanup) {
+ pDisp = NULL;
+ } else {
+ hr = obj->i.dispatch->lpVtbl->AddRef(obj->i.dispatch);
+ }
}
return hr;