From c8f43c67d01412e3b90ba30d2450082e18e23a7e Mon Sep 17 00:00:00 2001 From: Dmitry Stogov Date: Sun, 9 Oct 2005 12:42:06 +0000 Subject: [PATCH] Fixed bug #34788 (SOAP Client not applying correct namespace to generated values) --- ext/soap/php_encoding.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/ext/soap/php_encoding.c b/ext/soap/php_encoding.c index 58adab43b5..f12776291b 100644 --- a/ext/soap/php_encoding.c +++ b/ext/soap/php_encoding.c @@ -1381,7 +1381,7 @@ static int model_to_xml_object(xmlNodePtr node, sdlContentModelPtr model, zval * } } return 1; - } else if (strict && model->u.element->nillable) { + } else if (strict && model->u.element->nillable && model->min_occurs > 0) { property = xmlNewNode(NULL,model->u.element->name); xmlAddChild(node, property); if (style == SOAP_ENCODED) { @@ -1390,6 +1390,12 @@ static int model_to_xml_object(xmlNodePtr node, sdlContentModelPtr model, zval * xmlNsPtr xsi = encode_add_ns(property,XSI_NAMESPACE); xmlSetNsProp(property, xsi, "nil", "true"); } + if (style == SOAP_LITERAL && + model->u.element->namens && + model->u.element->form == XSD_FORM_QUALIFIED) { + xmlNsPtr nsp = encode_add_ns(property, model->u.element->namens); + xmlSetNs(property, nsp); + } return 1; } else if (model->min_occurs == 0) { return 2; -- 2.50.1