summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/soap/config.w3212
-rw-r--r--ext/soap/php_encoding.c1
-rw-r--r--ext/soap/php_schema.c1
-rw-r--r--ext/soap/php_sdl.c4
-rw-r--r--ext/soap/php_soap.h4
-rw-r--r--ext/soap/soap.c7
6 files changed, 16 insertions, 13 deletions
diff --git a/ext/soap/config.w32 b/ext/soap/config.w32
index f7f5090cbb..f579f32a04 100644
--- a/ext/soap/config.w32
+++ b/ext/soap/config.w32
@@ -4,15 +4,11 @@
ARG_ENABLE("soap", "SOAP support", "no");
if (PHP_SOAP != "no" && PHP_LIBXML == "yes") {
- if (PHP_VERSION > 4) {
- WARNING('soap does not yet compile with php >= 5');
- } else {
- EXTENSION('soap', 'soap.c php_encoding.c php_http.c php_packet_soap.c php_schema.c php_sdl.c php_xml.c');
- AC_DEFINE('HAVE_PHP_SOAP', 1);
+ EXTENSION('soap', 'soap.c php_encoding.c php_http.c php_packet_soap.c php_schema.c php_sdl.c php_xml.c');
+ AC_DEFINE('HAVE_PHP_SOAP', 1);
- if (!PHP_SOAP_SHARED) {
- ADD_FLAG('CFLAGS_SOAP', "/D LIBXML_STATIC ");
- }
+ if (!PHP_SOAP_SHARED) {
+ ADD_FLAG('CFLAGS_SOAP', "/D LIBXML_STATIC ");
}
}
diff --git a/ext/soap/php_encoding.c b/ext/soap/php_encoding.c
index bd6ec43978..b5f3b96fe7 100644
--- a/ext/soap/php_encoding.c
+++ b/ext/soap/php_encoding.c
@@ -1429,6 +1429,7 @@ smart_str *build_soap_action(zval *this_ptr, char *soapaction)
{
zval **uri;
smart_str *tmp;
+ TSRMLS_FETCH();
tmp = emalloc(sizeof(smart_str));
memset(tmp, 0, sizeof(smart_str));
diff --git a/ext/soap/php_schema.c b/ext/soap/php_schema.c
index 647accc19b..5fa5a5ee91 100644
--- a/ext/soap/php_schema.c
+++ b/ext/soap/php_schema.c
@@ -741,6 +741,7 @@ static int schema_complexType(sdlPtr *sdl, xmlAttrPtr tsn, xmlNodePtr compType,
{
xmlNodePtr content;
xmlAttrPtr attrs, name, ns;
+ TSRMLS_FETCH();
attrs = compType->properties;
ns = get_attribute(attrs, "targetNamespace");
diff --git a/ext/soap/php_sdl.c b/ext/soap/php_sdl.c
index cc1e719497..01c8272c7f 100644
--- a/ext/soap/php_sdl.c
+++ b/ext/soap/php_sdl.c
@@ -108,6 +108,7 @@ zval *sdl_guess_convert_zval(encodeType enc, xmlNodePtr data)
if (memcmp(&type->encode->details,&enc,sizeof(enc))!=0) {
return master_to_zval(type->encode, data);
} else {
+ TSRMLS_FETCH();
return master_to_zval(get_conversion(UNKNOWN_TYPE), data);
}
}
@@ -146,6 +147,7 @@ xmlNodePtr sdl_guess_convert_xml(encodeType enc, zval *data, int style)
if (memcmp(&type->encode->details,&enc,sizeof(enc))!=0) {
ret = master_to_xml(type->encode, data, style);
} else {
+ TSRMLS_FETCH();
ret = master_to_xml(get_conversion(UNKNOWN_TYPE), data, style);
}
}
@@ -202,6 +204,7 @@ xmlNodePtr sdl_to_xml_object(sdlTypePtr type, zval *data, int style)
{
xmlNodePtr ret;
sdlTypePtr *t, tmp;
+ TSRMLS_FETCH();
ret = xmlNewNode(NULL, "BOGUS");
FIND_ZVAL_NULL(data, ret, style);
@@ -254,6 +257,7 @@ static void add_xml_array_elements(xmlNodePtr xmlParam,
if (dimension == 1) {
xmlNodePtr xparam;
if (enc == NULL) {
+ TSRMLS_FETCH();
xparam = master_to_xml(get_conversion((*zdata)->type), (*zdata), style);
} else {
xparam = master_to_xml(enc, (*zdata), style);
diff --git a/ext/soap/php_soap.h b/ext/soap/php_soap.h
index 24a9b9a8e6..d65dcfdbaf 100644
--- a/ext/soap/php_soap.h
+++ b/ext/soap/php_soap.h
@@ -180,7 +180,7 @@ extern zend_class_entry* soap_var_class_entry;
PS_SERIALIZER_FUNCS(soap);
-void clear_soap_fault(zval *obj);
+void clear_soap_fault(zval *obj TSRMLS_DC);
void set_soap_fault(zval *obj, char *fault_code, char *fault_string, char *fault_actor, zval *fault_detail TSRMLS_DC);
zval* add_soap_fault(zval *obj, char *fault_code, char *fault_string, char *fault_actor, zval *fault_detail TSRMLS_DC);
@@ -201,8 +201,8 @@ void delete_mapping(void *data);
void soap_call_function_handler(INTERNAL_FUNCTION_PARAMETERS, zend_property_reference *property_reference);
zval soap_get_property_handler(zend_property_reference *property_reference);
int soap_set_property_handler(zend_property_reference *property_reference, zval *value);
-void soap_destructor(void *jobject);
#endif
+void soap_destructor(void *jobject);
void deseralize_function_call(sdlPtr sdl, xmlDocPtr request, zval *function_name, int *num_params, zval **parameters[], int *version TSRMLS_DC);
xmlDocPtr seralize_response_call(sdlFunctionPtr function, char *function_name,char *uri,zval *ret, int version TSRMLS_DC);
diff --git a/ext/soap/soap.c b/ext/soap/soap.c
index 8b87f099f4..a46bc23a08 100644
--- a/ext/soap/soap.c
+++ b/ext/soap/soap.c
@@ -1392,7 +1392,8 @@ static void do_soap_call(zval* thisObj,
int function_len,
int arg_count,
zval** real_args,
- zval* return_value)
+ zval* return_value
+ TSRMLS_DC)
{
zval **tmp;
zval **trace;
@@ -1420,7 +1421,7 @@ static void do_soap_call(zval* thisObj,
FETCH_SDL_RES(sdl,tmp);
}
- clear_soap_fault(thisObj);
+ clear_soap_fault(thisObj TSRMLS_CC);
zend_try {
SOAP_GLOBAL(sdl) = sdl;
@@ -1713,7 +1714,7 @@ void soap_call_function_handler(INTERNAL_FUNCTION_PARAMETERS, zend_property_refe
}
#endif
-void clear_soap_fault(zval *obj)
+void clear_soap_fault(zval *obj TSRMLS_DC)
{
if(obj != NULL && obj->type == IS_OBJECT) {
/* zend_hash_del(obj->value.obj.properties, "__soap_fault", sizeof("__soap_fault"));*/