summaryrefslogtreecommitdiff
path: root/ext/com/COM.c
diff options
context:
space:
mode:
authorHarald Radi <phanto@php.net>2002-05-20 15:35:57 +0000
committerHarald Radi <phanto@php.net>2002-05-20 15:35:57 +0000
commite47a667cc91333627bc07aab42f0a7025181e85e (patch)
tree915090669e47e62b7f90dc716d2dd11ef1c54745 /ext/com/COM.c
parent6553e9479137896cef0d5ba2d560088774f49240 (diff)
downloadphp-git-e47a667cc91333627bc07aab42f0a7025181e85e.tar.gz
integrating wez's patch
Diffstat (limited to 'ext/com/COM.c')
-rw-r--r--ext/com/COM.c18
1 files changed, 3 insertions, 15 deletions
diff --git a/ext/com/COM.c b/ext/com/COM.c
index f8149faf7c..2e57eb1bd6 100644
--- a/ext/com/COM.c
+++ b/ext/com/COM.c
@@ -1427,25 +1427,13 @@ PHPAPI int php_COM_set_property_handler(zend_property_reference *property_refere
PHPAPI zval *php_COM_object_from_dispatch(IDispatch *disp, zval *val TSRMLS_DC)
{
comval *obj;
- long rid;
zval *zobj;
ALLOC_COM(obj);
- C_DISPATCH(obj) = disp;
- php_COM_set(obj, &C_DISPATCH(obj), FALSE TSRMLS_CC);
-
- /* resource */
- rid = zend_list_insert(obj, IS_COM);
-
- if (val == NULL)
- MAKE_STD_ZVAL(val);
- ZVAL_RESOURCE(val, rid);
-
- /* now we want an object */
MAKE_STD_ZVAL(zobj);
- object_init_ex(zobj, &COM_class_entry);
- zend_hash_index_update(Z_OBJPROP_P(zobj), 0, &val, sizeof(zval *), NULL);
-
+ php_COM_set(obj, &disp, FALSE TSRMLS_CC);
+ ZVAL_COM_EX(zobj, obj, val);
+
return zobj;
}