mgdm                                     Thu, 25 Mar 2010 20:06:05 +0000

Revision: http://svn.php.net/viewvc?view=revision&revision=296820

Log:
Remove some more calls to TSRMLS_FETCH()

Changed paths:
    U   php/php-src/trunk/ext/soap/php_encoding.c
    U   php/php-src/trunk/ext/soap/php_encoding.h
    U   php/php-src/trunk/ext/soap/php_packet_soap.c
    U   php/php-src/trunk/ext/soap/soap.c

Modified: php/php-src/trunk/ext/soap/php_encoding.c
===================================================================
--- php/php-src/trunk/ext/soap/php_encoding.c	2010-03-25 20:03:00 UTC (rev 296819)
+++ php/php-src/trunk/ext/soap/php_encoding.c	2010-03-25 20:06:05 UTC (rev 296820)
@@ -358,11 +358,10 @@
 	return 0;
 }

-static xmlNodePtr master_to_xml_int(encodePtr encode, zval *data, int style, xmlNodePtr parent, int check_class_map)
+static xmlNodePtr master_to_xml_int(encodePtr encode, zval *data, int style, xmlNodePtr parent, int check_class_map TSRMLS_DC)
 {
 	xmlNodePtr node = NULL;
 	int add_type = 0;
-	TSRMLS_FETCH();

 	/* Special handling of class SoapVar */
 	if (data &&
@@ -407,9 +406,9 @@
 		}

 		if (zend_hash_find(ht, "enc_value", sizeof("enc_value"), (void **)&zdata) == FAILURE) {
-			node = master_to_xml(enc, NULL, style, parent);
+			node = master_to_xml(enc, NULL, style, parent TSRMLS_CC);
 		} else {
-			node = master_to_xml(enc, *zdata, style, parent);
+			node = master_to_xml(enc, *zdata, style, parent TSRMLS_CC);
 		}

 		if (style == SOAP_ENCODED || (SOAP_GLOBAL(sdl) && encode != enc)) {
@@ -495,15 +494,14 @@
 	return node;
 }

-xmlNodePtr master_to_xml(encodePtr encode, zval *data, int style, xmlNodePtr parent)
+xmlNodePtr master_to_xml(encodePtr encode, zval *data, int style, xmlNodePtr parent TSRMLS_DC)
 {
-	return master_to_xml_int(encode, data, style, parent, 1);
+	return master_to_xml_int(encode, data, style, parent, 1 TSRMLS_CC);
 }

-static zval *master_to_zval_int(encodePtr encode, xmlNodePtr data)
+static zval *master_to_zval_int(encodePtr encode, xmlNodePtr data TSRMLS_DC)
 {
 	zval *ret = NULL;
-	TSRMLS_FETCH();

 	if (SOAP_GLOBAL(typemap)) {
 		if (encode->details.type_str) {
@@ -552,9 +550,8 @@
 	return ret;
 }

-zval *master_to_zval(encodePtr encode, xmlNodePtr data)
+zval *master_to_zval(encodePtr encode, xmlNodePtr data TSRMLS_DC)
 {
-	TSRMLS_FETCH();
 	data = check_and_resolve_href(data);

 	if (encode == NULL) {
@@ -584,7 +581,7 @@
 			}
 		}
 	}
-	return master_to_zval_int(encode, data);
+	return master_to_zval_int(encode, data TSRMLS_CC);
 }

 xmlNodePtr to_xml_user(encodeTypePtr type, zval *data, int style, xmlNodePtr parent TSRMLS_DC)
@@ -1264,7 +1261,7 @@

 	while (node != NULL) {
 		if (get_zval_property(ret, (char*)node->name TSRMLS_CC) == NULL) {
-			zval* val = master_to_zval(get_conversion(XSD_ANYXML), node);
+			zval* val = master_to_zval(get_conversion(XSD_ANYXML), node TSRMLS_CC);

 			if (any && Z_TYPE_P(any) != IS_ARRAY) {
 				/* Convert into array */
@@ -1283,7 +1280,7 @@
 			if (Z_TYPE_P(val) == IS_STRING && *Z_STRVAL_P(val) == '<') {
 				name = NULL;
 				while (node->next != NULL) {
-					zval* val2 = master_to_zval(get_conversion(XSD_ANYXML), node->next);
+					zval* val2 = master_to_zval(get_conversion(XSD_ANYXML), node->next TSRMLS_CC);
 					if (Z_TYPE_P(val2) != IS_STRING ||  *Z_STRVAL_P(val) != '<') {
 						break;
 					}
@@ -1355,19 +1352,19 @@
 						if (model->u.element->fixed && strcmp(model->u.element->fixed, (char*)r_node->children->content) != 0) {
 							soap_error3(E_ERROR, "Encoding: Element '%s' has fixed value '%s' (value '%s' is not allowed)", model->u.element->name, model->u.element->fixed, r_node->children->content);
 						}
-						val = master_to_zval(model->u.element->encode, r_node);
+						val = master_to_zval(model->u.element->encode, r_node TSRMLS_CC);
 					} else if (model->u.element->fixed) {
 						xmlNodePtr dummy = xmlNewNode(NULL, BAD_CAST("BOGUS"));
 						xmlNodeSetContent(dummy, BAD_CAST(model->u.element->fixed));
-						val = master_to_zval(model->u.element->encode, dummy);
+						val = master_to_zval(model->u.element->encode, dummy TSRMLS_CC);
 						xmlFreeNode(dummy);
 					} else if (model->u.element->def && !model->u.element->nillable) {
 						xmlNodePtr dummy = xmlNewNode(NULL, BAD_CAST("BOGUS"));
 						xmlNodeSetContent(dummy, BAD_CAST(model->u.element->def));
-						val = master_to_zval(model->u.element->encode, dummy);
+						val = master_to_zval(model->u.element->encode, dummy TSRMLS_CC);
 						xmlFreeNode(dummy);
 					} else {
-						val = master_to_zval(model->u.element->encode, r_node);
+						val = master_to_zval(model->u.element->encode, r_node TSRMLS_CC);
 					}
 					if ((node = get_node(node->next, model->u.element->name)) != NULL) {
 						zval *array;
@@ -1380,19 +1377,19 @@
 								if (model->u.element->fixed && strcmp(model->u.element->fixed, (char*)node->children->content) != 0) {
 									soap_error3(E_ERROR, "Encoding: Element '%s' has fixed value '%s' (value '%s' is not allowed)", model->u.element->name, model->u.element->fixed, node->children->content);
 								}
-								val = master_to_zval(model->u.element->encode, node);
+								val = master_to_zval(model->u.element->encode, node TSRMLS_CC);
 							} else if (model->u.element->fixed) {
 								xmlNodePtr dummy = xmlNewNode(NULL, BAD_CAST("BOGUS"));
 								xmlNodeSetContent(dummy, BAD_CAST(model->u.element->fixed));
-								val = master_to_zval(model->u.element->encode, dummy);
+								val = master_to_zval(model->u.element->encode, dummy TSRMLS_CC);
 								xmlFreeNode(dummy);
 							} else if (model->u.element->def && !model->u.element->nillable) {
 								xmlNodePtr dummy = xmlNewNode(NULL, BAD_CAST("BOGUS"));
 								xmlNodeSetContent(dummy, BAD_CAST(model->u.element->def));
-								val = master_to_zval(model->u.element->encode, dummy);
+								val = master_to_zval(model->u.element->encode, dummy TSRMLS_CC);
 								xmlFreeNode(dummy);
 							} else {
-								val = master_to_zval(model->u.element->encode, node);
+								val = master_to_zval(model->u.element->encode, node TSRMLS_CC);
 							}
 							add_next_index_zval(array, val);
 						} while ((node = get_node(node->next, model->u.element->name)) != NULL);
@@ -1484,7 +1481,7 @@
 				}

 				object_init_ex(ret, ce);
-				base = master_to_zval_int(enc, data);
+				base = master_to_zval_int(enc, data TSRMLS_CC);
 				set_zval_property(ret, "_", base TSRMLS_CC);
 			} else {
 				ALLOC_INIT_ZVAL(ret);
@@ -1513,7 +1510,7 @@
 			          sdlType->encode->details.sdl_type->encode->details.type != SOAP_ENC_ARRAY))) {
 					ret = to_zval_object_ex(&sdlType->encode->details, data, ce TSRMLS_CC);
 			    } else {
-					ret = master_to_zval_int(sdlType->encode, data);
+					ret = master_to_zval_int(sdlType->encode, data TSRMLS_CC);
 				}
 				FIND_XML_NULL(data, ret);
 				if (soap_check_xml_ref(&ret, data TSRMLS_CC)) {
@@ -1533,7 +1530,7 @@
 				}

 				object_init_ex(ret, ce);
-				base = master_to_zval_int(sdlType->encode, data);
+				base = master_to_zval_int(sdlType->encode, data TSRMLS_CC);
 				set_zval_property(ret, "_", base TSRMLS_CC);
 			}
 		} else {
@@ -1584,7 +1581,7 @@
 						dummy = xmlNewNode(NULL, BAD_CAST("BOGUS"));
 						text = xmlNewText(BAD_CAST(str_val));
 						xmlAddChild(dummy, text);
-						data = master_to_zval((*attr)->encode, dummy);
+						data = master_to_zval((*attr)->encode, dummy TSRMLS_CC);
 						xmlFreeNode(dummy);
 						set_zval_property(ret, (*attr)->name, data TSRMLS_CC);
 					}
@@ -1608,7 +1605,7 @@
 				zval  *tmpVal;
 				zval *prop;

-				tmpVal = master_to_zval(NULL, trav);
+				tmpVal = master_to_zval(NULL, trav TSRMLS_CC);

 				prop = get_zval_property(ret, (char*)trav->name TSRMLS_CC);
 				if (!prop) {
@@ -1682,7 +1679,7 @@
 							xmlAddChild(node, property);
 							set_xsi_nil(property);
 						} else {
-							property = master_to_xml(enc, *val, style, node);
+							property = master_to_xml(enc, *val, style, node TSRMLS_CC);
 							if (property->children && property->children->content &&
 							    model->u.element->fixed && strcmp(model->u.element->fixed, (char*)property->children->content) != 0) {
 								soap_error3(E_ERROR, "Encoding: Element '%s' has fixed value '%s' (value '%s' is not allowed)", model->u.element->name, model->u.element->fixed, property->children->content);
@@ -1705,7 +1702,7 @@
 					} else if (Z_TYPE_P(data) == IS_NULL && model->min_occurs == 0) {
 						return 1;
 					} else {
-						property = master_to_xml(enc, data, style, node);
+						property = master_to_xml(enc, data, style, node TSRMLS_CC);
 						if (property->children && property->children->content &&
 						    model->u.element->fixed && strcmp(model->u.element->fixed, (char*)property->children->content) != 0) {
 							soap_error3(E_ERROR, "Encoding: Element '%s' has fixed value '%s' (value '%s' is not allowed)", model->u.element->name, model->u.element->fixed, property->children->content);
@@ -1757,11 +1754,11 @@

 					zend_hash_internal_pointer_reset(ht);
 					while (zend_hash_get_current_data(ht,(void**)&val) == SUCCESS) {
-						property = master_to_xml(enc, *val, style, node);
+						property = master_to_xml(enc, *val, style, node TSRMLS_CC);
 						zend_hash_move_forward(ht);
 					}
 				} else {
-					property = master_to_xml(enc, data, style, node);
+					property = master_to_xml(enc, data, style, node TSRMLS_CC);
 				}
 				return 1;
 			} else if (model->min_occurs == 0) {
@@ -1886,9 +1883,9 @@
 			if (enc) {
 				zval *tmp = get_zval_property(data, "_" TSRMLS_CC);
 				if (tmp) {
-					xmlParam = master_to_xml(enc, tmp, style, parent);
+					xmlParam = master_to_xml(enc, tmp, style, parent TSRMLS_CC);
 				} else if (prop == NULL) {
-					xmlParam = master_to_xml(enc, data, style, parent);
+					xmlParam = master_to_xml(enc, data, style, parent TSRMLS_CC);
 				} else {
 					xmlParam = xmlNewNode(NULL, BAD_CAST("BOGUS"));
 					xmlAddChild(parent, xmlParam);
@@ -1905,15 +1902,15 @@
 			    sdlType->encode->details.sdl_type->kind != XSD_TYPEKIND_UNION) {

 				if (prop) prop->nApplyCount++;
-				xmlParam = master_to_xml(sdlType->encode, data, style, parent);
+				xmlParam = master_to_xml(sdlType->encode, data, style, parent TSRMLS_CC);
 				if (prop) prop->nApplyCount--;
 			} else {
 				zval *tmp = get_zval_property(data, "_" TSRMLS_CC);

 				if (tmp) {
-					xmlParam = master_to_xml(sdlType->encode, tmp, style, parent);
+					xmlParam = master_to_xml(sdlType->encode, tmp, style, parent TSRMLS_CC);
 				} else if (prop == NULL) {
-					xmlParam = master_to_xml(sdlType->encode, data, style, parent);
+					xmlParam = master_to_xml(sdlType->encode, data, style, parent TSRMLS_CC);
 				} else {
 					xmlParam = xmlNewNode(NULL, BAD_CAST("BOGUS"));
 					xmlAddChild(parent, xmlParam);
@@ -1945,7 +1942,7 @@
 						xmlAddChild(xmlParam, property);
 						set_xsi_nil(property);
 					} else {
-						property = master_to_xml(array_el->encode, *val, style, xmlParam);
+						property = master_to_xml(array_el->encode, *val, style, xmlParam TSRMLS_CC);
 					}
 					xmlNodeSetName(property, BAD_CAST(array_el->name));
 					if (style == SOAP_LITERAL &&
@@ -1971,7 +1968,7 @@
 						if (zattr) {
 							xmlNodePtr dummy;

-							dummy = master_to_xml((*attr)->encode, zattr, SOAP_LITERAL, xmlParam);
+							dummy = master_to_xml((*attr)->encode, zattr, SOAP_LITERAL, xmlParam TSRMLS_CC);
 							if (dummy->children && dummy->children->content) {
 								if ((*attr)->fixed && strcmp((*attr)->fixed, (char*)dummy->children->content) != 0) {
 									soap_error3(E_ERROR, "Encoding: Attribute '%s' has fixed value '%s' (value '%s' is not allowed)", (*attr)->name, (*attr)->fixed, dummy->children->content);
@@ -2022,7 +2019,7 @@
 				key_type = zend_hash_get_current_key_ex(prop, &str_key, &str_key_len, &index, FALSE, NULL);
 				zend_hash_get_current_data(prop, (void **)&zprop);

-				property = master_to_xml(get_conversion((*zprop)->type), (*zprop), style, xmlParam);
+				property = master_to_xml(get_conversion((*zprop)->type), (*zprop), style, xmlParam TSRMLS_CC);

 				if (key_type == HASH_KEY_IS_STRING) {
 			  	char *prop_name;
@@ -2064,7 +2061,7 @@
 		enc = get_conversion(IS_NULL);
 	}

-	return master_to_xml(enc, data, style, parent);
+	return master_to_xml(enc, data, style, parent TSRMLS_CC);
 }

 static int calc_dimension_12(const char* str)
@@ -2167,7 +2164,8 @@
                                    int dimension ,
                                    int* dims,
                                    zval* data,
-                                   int style)
+                                   int style
+                                   TSRMLS_DC)
 {
 	int j;

@@ -2184,9 +2182,9 @@

 	 			if (zdata) {
 	 				if (enc == NULL) {
- 						xparam = master_to_xml(get_conversion((*zdata)->type), (*zdata), style, xmlParam);
+ 						xparam = master_to_xml(get_conversion((*zdata)->type), (*zdata), style, xmlParam TSRMLS_CC);
  					} else {
- 						xparam = master_to_xml(enc, (*zdata), style, xmlParam);
+ 						xparam = master_to_xml(enc, (*zdata), style, xmlParam TSRMLS_CC);
 		 			}
 		 		} else {
 					xparam = xmlNewNode(NULL, BAD_CAST("BOGUS"));
@@ -2203,9 +2201,9 @@
  				}
  			} else {
  				if (zdata) {
-	 			  add_xml_array_elements(xmlParam, type, enc, ns, dimension-1, dims+1, *zdata, style);
+	 			  add_xml_array_elements(xmlParam, type, enc, ns, dimension-1, dims+1, *zdata, style TSRMLS_CC);
 	 			} else {
-	 			  add_xml_array_elements(xmlParam, type, enc, ns, dimension-1, dims+1, NULL, style);
+	 			  add_xml_array_elements(xmlParam, type, enc, ns, dimension-1, dims+1, NULL, style TSRMLS_CC);
 	 			}
  			}
  			zend_hash_move_forward(data->value.ht);
@@ -2226,7 +2224,7 @@
  					xmlNodeSetName(xparam, BAD_CAST("item"));
  				}
  			} else {
- 			  add_xml_array_elements(xmlParam, type, enc, ns, dimension-1, dims+1, NULL, style);
+ 			  add_xml_array_elements(xmlParam, type, enc, ns, dimension-1, dims+1, NULL, style TSRMLS_CC);
  			}
 		}
  	}
@@ -2506,7 +2504,7 @@
 		smart_str_free(&array_type);
 		smart_str_free(&array_size);

-		add_xml_array_elements(xmlParam, element_type, enc, enc?encode_add_ns(xmlParam,enc->details.ns):NULL, dimension, dims, data, style);
+		add_xml_array_elements(xmlParam, element_type, enc, enc?encode_add_ns(xmlParam,enc->details.ns):NULL, dimension, dims, data, style TSRMLS_CC);
 		efree(dims);
 	}
 	if (style == SOAP_ENCODED) {
@@ -2689,7 +2687,7 @@
 			zval *tmpVal, *ar;
 			xmlAttrPtr position = get_attribute(trav->properties,"position");

-			tmpVal = master_to_zval(enc, trav);
+			tmpVal = master_to_zval(enc, trav TSRMLS_CC);
 			if (position != NULL && position->children && position->children->content) {
 				char* tmp = strrchr((char*)position->children->content, '[');
 				if (tmp == NULL) {
@@ -2782,7 +2780,7 @@
 				smart_str_free(&tmp);
 			}

-			xparam = master_to_xml(get_conversion((*temp_data)->type), (*temp_data), style, item);
+			xparam = master_to_xml(get_conversion((*temp_data)->type), (*temp_data), style, item TSRMLS_CC);
 			xmlNodeSetName(xparam, BAD_CAST("value"));

 			zend_hash_move_forward(data->value.ht);
@@ -2819,8 +2817,8 @@
 				soap_error0(E_ERROR,  "Encoding: Can't decode apache map, missing value");
 			}

-			key = master_to_zval(NULL, xmlKey);
-			value = master_to_zval(NULL, xmlValue);
+			key = master_to_zval(NULL, xmlKey TSRMLS_CC);
+			value = master_to_zval(NULL, xmlValue TSRMLS_CC);

 			if (Z_TYPE_P(key) == IS_STRING) {
 				zend_symtable_update(Z_ARRVAL_P(ret), Z_STRVAL_P(key), Z_STRLEN_P(key) + 1, &value, sizeof(zval *), NULL);
@@ -2849,7 +2847,7 @@
 	} else {
 		enc = get_conversion(IS_NULL);
 	}
-	ret = master_to_xml_int(enc, data, style, parent, 0);
+	ret = master_to_xml_int(enc, data, style, parent, 0 TSRMLS_CC);
 /*
 	if (style == SOAP_LITERAL && SOAP_GLOBAL(sdl)) {
 		set_ns_and_type(ret, &enc->details);
@@ -2916,7 +2914,7 @@
 			}
 		}
 	}
-	ret = master_to_zval_int(enc, data);
+	ret = master_to_zval_int(enc, data TSRMLS_CC);
 	if (SOAP_GLOBAL(sdl) && type_name && enc->details.sdl_type) {
 		zval* soapvar;
 		char *ns, *cptype;
@@ -3079,7 +3077,7 @@

 		zend_hash_internal_pointer_reset(ht);
 		while (zend_hash_get_current_data(ht, (void**)&tmp) == SUCCESS) {
-			xmlNodePtr dummy = master_to_xml(list_enc, *tmp, SOAP_LITERAL, ret);
+			xmlNodePtr dummy = master_to_xml(list_enc, *tmp, SOAP_LITERAL, ret TSRMLS_CC);
 			if (dummy && dummy->children && dummy->children->content) {
 				if (list.len != 0) {
 					smart_str_appendc(&list, ' ');
@@ -3118,7 +3116,7 @@
 			  next++;
 			}
 			ZVAL_STRING(&dummy_zval, start, 0);
-			dummy = master_to_xml(list_enc, &dummy_zval, SOAP_LITERAL, ret);
+			dummy = master_to_xml(list_enc, &dummy_zval, SOAP_LITERAL, ret TSRMLS_CC);
 			if (dummy && dummy->children && dummy->children->content) {
 				if (list.len != 0) {
 					smart_str_appendc(&list, ' ');
@@ -3175,7 +3173,7 @@
 		if (zend_hash_find(SOAP_GLOBAL(sdl)->elements, nscat.c, nscat.len+1, (void **)&sdl_type) == SUCCESS &&
 		    (*sdl_type)->encode) {
 			smart_str_free(&nscat);
-			return master_to_zval_int((*sdl_type)->encode, data);
+			return master_to_zval_int((*sdl_type)->encode, data TSRMLS_CC);
 		}
 		smart_str_free(&nscat);
 	}
@@ -3203,7 +3201,7 @@
 		for (zend_hash_internal_pointer_reset_ex(Z_ARRVAL_P(data), &pos);
 		     zend_hash_get_current_data_ex(Z_ARRVAL_P(data), (void **) &el, &pos) == SUCCESS;
 		     zend_hash_move_forward_ex(Z_ARRVAL_P(data), &pos)) {
-			ret = master_to_xml(enc, *el, style, parent);
+			ret = master_to_xml(enc, *el, style, parent TSRMLS_CC);
 		    if (ret &&
 		        ret->name != xmlStringTextNoenc &&
 		        zend_hash_get_current_key_ex(Z_ARRVAL_P(data), &name, &name_len, &idx, 0, &pos) == HASH_KEY_IS_STRING) {
@@ -3278,7 +3276,7 @@
 	switch (type->kind) {
 		case XSD_TYPEKIND_SIMPLE:
 			if (type->encode && enc != &type->encode->details) {
-				return master_to_zval_int(type->encode, data);
+				return master_to_zval_int(type->encode, data TSRMLS_CC);
 			} else {
 				return guess_zval_convert(enc, data TSRMLS_CC);
 			}
@@ -3342,7 +3340,7 @@
 	switch(type->kind) {
 		case XSD_TYPEKIND_SIMPLE:
 			if (type->encode && enc != &type->encode->details) {
-				ret = master_to_xml(type->encode, data, style, parent);
+				ret = master_to_xml(type->encode, data, style, parent TSRMLS_CC);
 			} else {
 				ret = guess_xml_convert(enc, data, style, parent TSRMLS_CC);
 			}
@@ -3485,7 +3483,7 @@
 	}
 	if (xmlns == NULL) {
 		xmlChar* prefix;
-		TSRMLS_FETCH();
+        TSRMLS_FETCH();

 		if (zend_hash_find(&SOAP_GLOBAL(defEncNs), (char*)ns, strlen(ns) + 1, (void **)&prefix) == SUCCESS) {
 			xmlns = xmlNewNs(node->doc->children, BAD_CAST(ns), prefix);
@@ -3663,7 +3661,7 @@
 			smart_str array_type = {0};

 			if (cur_ns) {
-				xmlNsPtr ns = encode_add_ns(node,cur_ns);
+				xmlNsPtr ns = encode_add_ns(node, cur_ns);

 				smart_str_appends(type, (char*)ns->prefix);
 				smart_str_appendc(type, ':');
@@ -3699,7 +3697,7 @@
 		           strcmp(ns,SOAP_1_2_ENC_NAMESPACE) == 0) {
 			ns = SOAP_1_1_ENC_NAMESPACE;
 		}
-		xmlns = encode_add_ns(node,ns);
+		xmlns = encode_add_ns(node, ns);
 		smart_str_appends(ret, (char*)xmlns->prefix);
 		smart_str_appendc(ret, ':');
 	}

Modified: php/php-src/trunk/ext/soap/php_encoding.h
===================================================================
--- php/php-src/trunk/ext/soap/php_encoding.h	2010-03-25 20:03:00 UTC (rev 296819)
+++ php/php-src/trunk/ext/soap/php_encoding.h	2010-03-25 20:06:05 UTC (rev 296820)
@@ -188,8 +188,8 @@
 };

 /* Master functions all encode/decode should be called thur these functions */
-xmlNodePtr master_to_xml(encodePtr encode, zval *data, int style, xmlNodePtr parent);
-zval *master_to_zval(encodePtr encode, xmlNodePtr data);
+xmlNodePtr master_to_xml(encodePtr encode, zval *data, int style, xmlNodePtr parent TSRMLS_DC);
+zval *master_to_zval(encodePtr encode, xmlNodePtr data TSRMLS_DC);

 /* user defined mapping */
 xmlNodePtr to_xml_user(encodeTypePtr type, zval *data, int style, xmlNodePtr parent TSRMLS_DC);

Modified: php/php-src/trunk/ext/soap/php_packet_soap.c
===================================================================
--- php/php-src/trunk/ext/soap/php_packet_soap.c	2010-03-25 20:03:00 UTC (rev 296819)
+++ php/php-src/trunk/ext/soap/php_packet_soap.c	2010-03-25 20:06:05 UTC (rev 296820)
@@ -191,21 +191,21 @@

 			tmp = get_node(fault->children, "faultstring");
 			if (tmp != NULL && tmp->children != NULL) {
-				zval *zv = master_to_zval(get_conversion(IS_STRING), tmp);
+				zval *zv = master_to_zval(get_conversion(IS_STRING), tmp TSRMLS_CC);
 				faultstring = Z_STRVAL_P(zv);
 				FREE_ZVAL(zv);
 			}

 			tmp = get_node(fault->children, "faultactor");
 			if (tmp != NULL && tmp->children != NULL) {
-				zval *zv = master_to_zval(get_conversion(IS_STRING), tmp);
+				zval *zv = master_to_zval(get_conversion(IS_STRING), tmp TSRMLS_CC);
 				faultactor = Z_STRVAL_P(zv);
 				FREE_ZVAL(zv);
 			}

 			tmp = get_node(fault->children, "detail");
 			if (tmp != NULL) {
-				details = master_to_zval(NULL, tmp);
+				details = master_to_zval(NULL, tmp TSRMLS_CC);
 			}
 		} else {
 			tmp = get_node(fault->children, "Code");
@@ -221,7 +221,7 @@
 				/* TODO: lang attribute */
 				tmp = get_node(tmp->children,"Text");
 				if (tmp != NULL && tmp->children != NULL) {
-					zval *zv = master_to_zval(get_conversion(IS_STRING), tmp);
+					zval *zv = master_to_zval(get_conversion(IS_STRING), tmp TSRMLS_CC);
 					faultstring = Z_STRVAL_P(zv);
 					FREE_ZVAL(zv);
 				}
@@ -229,7 +229,7 @@

 			tmp = get_node(fault->children,"Detail");
 			if (tmp != NULL) {
-				details = master_to_zval(NULL, tmp);
+				details = master_to_zval(NULL, tmp TSRMLS_CC);
 			}
 		}
 		add_soap_fault(this_ptr, faultcode, faultstring, faultactor, details TSRMLS_CC);
@@ -327,9 +327,9 @@
 					} else {
 						/* Decoding value of parameter */
 						if (param != NULL) {
-							tmp = master_to_zval(param->encode, val);
+							tmp = master_to_zval(param->encode, val TSRMLS_CC);
 						} else {
-							tmp = master_to_zval(NULL, val);
+							tmp = master_to_zval(NULL, val TSRMLS_CC);
 						}
 					}
 					add_assoc_zval(return_value, param->paramName, tmp);
@@ -352,7 +352,7 @@
 						zval *tmp;
 						zval **arr;

-						tmp = master_to_zval(NULL, val);
+						tmp = master_to_zval(NULL, val TSRMLS_CC);
 						if (val->name) {
 							if (zend_hash_find(Z_ARRVAL_P(return_value), (char*)val->name, strlen((char*)val->name)+1, (void**)&arr) == SUCCESS) {
 								add_next_index_zval(*arr, tmp);
@@ -416,7 +416,7 @@
 					}
 					smart_str_free(&key);
 				}
-				val = master_to_zval(enc, trav);
+				val = master_to_zval(enc, trav TSRMLS_CC);
 				add_assoc_zval(soap_headers, (char*)trav->name, val);
 			}
 			trav = trav->next;

Modified: php/php-src/trunk/ext/soap/soap.c
===================================================================
--- php/php-src/trunk/ext/soap/soap.c	2010-03-25 20:03:00 UTC (rev 296819)
+++ php/php-src/trunk/ext/soap/soap.c	2010-03-25 20:06:05 UTC (rev 296820)
@@ -3470,7 +3470,7 @@
 	}
 }

-static void deserialize_parameters(xmlNodePtr params, sdlFunctionPtr function, int *num_params, zval ***parameters)
+static void deserialize_parameters(xmlNodePtr params, sdlFunctionPtr function, int *num_params, zval ***parameters TSRMLS_DC)
 {
 	int cur_param = 0,num_of_params = 0;
 	zval **tmp_parameters = NULL;
@@ -3501,7 +3501,7 @@
 					MAKE_STD_ZVAL(tmp_parameters[cur_param]);
 					ZVAL_NULL(tmp_parameters[cur_param]);
 				} else {
-					tmp_parameters[cur_param] = master_to_zval((*param)->encode, val);
+					tmp_parameters[cur_param] = master_to_zval((*param)->encode, val TSRMLS_CC);
 				}
 				cur_param++;

@@ -3531,7 +3531,7 @@
 		    ((sdlSoapBindingFunctionPtr)function->bindingAttributes)->style == SOAP_DOCUMENT &&
 		    (function->requestParameters == NULL ||
 		     zend_hash_num_elements(function->requestParameters) == 0) &&
-		    strcmp(params->name, function->functionName) == 0) {
+		    strcmp((char *)params->name, function->functionName) == 0) {
 			num_of_params = 0;
 		} else if (num_of_params > 0) {
 			tmp_parameters = safe_emalloc(num_of_params, sizeof(zval *), 0);
@@ -3551,7 +3551,7 @@
 					} else {
 						enc = (*param)->encode;
 					}
-					tmp_parameters[cur_param] = master_to_zval(enc, trav);
+					tmp_parameters[cur_param] = master_to_zval(enc, trav TSRMLS_CC);
 					cur_param++;
 				}
 				trav = trav->next;
@@ -3559,7 +3559,6 @@
 		}
 	}
 	if (num_of_params > cur_param) {
-		TSRMLS_FETCH();
 		soap_server_fault("Client","Missing parameter", NULL, NULL, NULL TSRMLS_CC);
 	}
 	(*parameters) = tmp_parameters;
@@ -3820,7 +3819,7 @@
 				if (h->hdr) {
 					h->num_params = 1;
 					h->parameters = emalloc(sizeof(zval*));
-					h->parameters[0] = master_to_zval(h->hdr->encode, hdr_func);
+					h->parameters[0] = master_to_zval(h->hdr->encode, hdr_func TSRMLS_CC);
 				} else {
 					if (h->function && h->function->binding && h->function->binding->bindingType == BINDING_SOAP) {
 						sdlSoapBindingFunctionPtr fnb = (sdlSoapBindingFunctionPtr)h->function->bindingAttributes;
@@ -3828,7 +3827,7 @@
 							hdr_func = hdr_func->children;
 						}
 					}
-					deserialize_parameters(hdr_func, h->function, &h->num_params, &h->parameters);
+					deserialize_parameters(hdr_func, h->function, &h->num_params, &h->parameters TSRMLS_CC);
 				}
 				INIT_ZVAL(h->retval);
 				if (last == NULL) {
@@ -3851,7 +3850,7 @@
 	} else {
 		func = func->children;
 	}
-	deserialize_parameters(func, function, num_params, parameters);
+	deserialize_parameters(func, function, num_params, parameters TSRMLS_CC);

 	encode_finish();

@@ -4045,7 +4044,7 @@
 					use = SOAP_ENCODED;
 				}
 			} else {
-				xmlNodePtr xmlHdr = master_to_xml(hdr_enc, hdr_ret, hdr_use, head);
+				xmlNodePtr xmlHdr = master_to_xml(hdr_enc, hdr_ret, hdr_use, head TSRMLS_CC);
 				if (hdr_name) {
 					xmlNodeSetName(xmlHdr, BAD_CAST(hdr_name));
 				}
@@ -4126,11 +4125,11 @@
 				efree(str);
 			}
 			if (zend_hash_find(prop, "faultstring", sizeof("faultstring"), (void**)&tmp) == SUCCESS) {
-				xmlNodePtr node = master_to_xml(get_conversion(IS_STRING), *tmp, SOAP_LITERAL, param);
+				xmlNodePtr node = master_to_xml(get_conversion(IS_STRING), *tmp, SOAP_LITERAL, param TSRMLS_CC);
 				xmlNodeSetName(node, BAD_CAST("faultstring"));
 			}
 			if (zend_hash_find(prop, "faultactor", sizeof("faultactor"), (void**)&tmp) == SUCCESS) {
-				xmlNodePtr node = master_to_xml(get_conversion(IS_STRING), *tmp, SOAP_LITERAL, param);
+				xmlNodePtr node = master_to_xml(get_conversion(IS_STRING), *tmp, SOAP_LITERAL, param TSRMLS_CC);
 				xmlNodeSetName(node, BAD_CAST("faultactor"));
 			}
 			detail_name = "detail";
@@ -4152,7 +4151,7 @@
 			}
 			if (zend_hash_find(prop, "faultstring", sizeof("faultstring"), (void**)&tmp) == SUCCESS) {
 				xmlNodePtr node = xmlNewChild(param, ns, BAD_CAST("Reason"), NULL);
-				node = master_to_xml(get_conversion(IS_STRING), *tmp, SOAP_LITERAL, node);
+				node = master_to_xml(get_conversion(IS_STRING), *tmp, SOAP_LITERAL, node TSRMLS_CC);
 				xmlNodeSetName(node, BAD_CAST("Text"));
 				xmlSetNs(node, ns);
 			}
@@ -4270,7 +4269,7 @@
 							use = SOAP_ENCODED;
 						}
 					} else {
-						xmlNodePtr xmlHdr = master_to_xml(hdr_enc, hdr_ret, hdr_use, head);
+						xmlNodePtr xmlHdr = master_to_xml(hdr_enc, hdr_ret, hdr_use, head TSRMLS_CC);
 						if (hdr_name) {
 							xmlNodeSetName(xmlHdr, BAD_CAST(hdr_name));
 						}
@@ -4475,7 +4474,7 @@
 				}

 				if (zend_hash_find(ht, "data", sizeof("data"), (void**)&tmp) == SUCCESS) {
-					h = master_to_xml(enc, *tmp, hdr_use, head);
+					h = master_to_xml(enc, *tmp, hdr_use, head TSRMLS_CC);
 					xmlNodeSetName(h, BAD_CAST(Z_STRVAL_PP(name)));
 				} else {
 					h = xmlNewNode(NULL, BAD_CAST(Z_STRVAL_PP(name)));
@@ -4595,7 +4594,7 @@
 	} else {
 		enc = NULL;
 	}
-	xmlParam = master_to_xml(enc, val, style, parent);
+	xmlParam = master_to_xml(enc, val, style, parent TSRMLS_CC);
 	if (!strcmp((char*)xmlParam->name, "BOGUS")) {
 		xmlNodeSetName(xmlParam, BAD_CAST(paramName));
 	}
-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to