summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/soap/soap.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/ext/soap/soap.c b/ext/soap/soap.c
index a9a258c37a..81174f605e 100644
--- a/ext/soap/soap.c
+++ b/ext/soap/soap.c
@@ -2061,7 +2061,7 @@ PHP_METHOD(SoapClient, SoapClient)
*class_map = **tmp;
zval_copy_ctor(class_map);
#ifdef ZEND_ENGINE_2
- class_map->refcount--; /*FIXME*/
+ class_map->refcount--;
#endif
add_property_zval(this_ptr, "_classmap", class_map);
}
@@ -2628,7 +2628,7 @@ zval* add_soap_fault(zval *obj, char *fault_code, char *fault_string, char *faul
ALLOC_INIT_ZVAL(fault);
set_soap_fault(fault, fault_code, fault_string, fault_actor, fault_detail, NULL TSRMLS_CC);
#ifdef ZEND_ENGINE_2
- fault->refcount--; /*FIXME*/
+ fault->refcount--;
#endif
add_property_zval(obj, "__soap_fault", fault);
return fault;
@@ -2681,6 +2681,9 @@ static void set_soap_fault(zval *obj, char *fault_code, char *fault_string, char
add_property_string(obj, "faultactor", fault_actor, 1);
}
if (fault_detail != NULL) {
+#ifdef ZEND_ENGINE_2
+ fault_detail->refcount--;
+#endif
add_property_zval(obj, "detail", fault_detail);
}
if (name != NULL) {