From c389a653f734ec2f0517c25e324740b1606febfe Mon Sep 17 00:00:00 2001 From: Dmitry Stogov Date: Mon, 10 Jul 2006 07:21:41 +0000 Subject: Fixed bug #38004 Parameters in SoapServer are decoded twice --- ext/soap/php_encoding.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'ext/soap/php_encoding.c') diff --git a/ext/soap/php_encoding.c b/ext/soap/php_encoding.c index a46a62ccf2..8d574c2225 100644 --- a/ext/soap/php_encoding.c +++ b/ext/soap/php_encoding.c @@ -1353,11 +1353,12 @@ static zval *to_zval_object_ex(encodeTypePtr type, xmlNodePtr data, zend_class_e str_val = (*attr)->def; } if (str_val) { + zval zstr; xmlNodePtr dummy; zval *data; - dummy = xmlNewNode(NULL, "BOGUS"); - xmlNodeSetContent(dummy, str_val); + ZVAL_STRING(&zstr, str_val, 0); + dummy = master_to_xml(get_conversion(IS_STRING), &zstr, SOAP_LITERAL, NULL); data = master_to_zval((*attr)->encode, dummy); xmlFreeNode(dummy); set_zval_property(ret, (*attr)->name, data TSRMLS_CC); -- cgit v1.2.1