diff options
Diffstat (limited to 'ext/soap/soap.c')
-rw-r--r-- | ext/soap/soap.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/ext/soap/soap.c b/ext/soap/soap.c index 73ee89ea93..663f260920 100644 --- a/ext/soap/soap.c +++ b/ext/soap/soap.c @@ -1321,7 +1321,8 @@ PHP_METHOD(SoapServer, setObject) service->type = SOAP_OBJECT; - ZVAL_COPY(&service->soap_object, obj); + Z_ADDREF_P(obj); + ZVAL_OBJ(&service->soap_object, Z_OBJ_P(obj)); SOAP_SERVER_END_CODE(); } @@ -2023,7 +2024,8 @@ PHP_METHOD(SoapServer, addSoapHeader) *p = emalloc(sizeof(soapHeader)); memset(*p, 0, sizeof(soapHeader)); ZVAL_NULL(&(*p)->function_name); - ZVAL_COPY(&(*p)->retval, fault); + Z_ADDREF_P(fault); + ZVAL_OBJ(&(*p)->retval, Z_OBJ_P(fault)); SOAP_SERVER_END_CODE(); } |