diff options
author | Dmitry Stogov <dmitry@php.net> | 2006-04-10 13:29:48 +0000 |
---|---|---|
committer | Dmitry Stogov <dmitry@php.net> | 2006-04-10 13:29:48 +0000 |
commit | 07d7750487b924380c2d284c5753a963501303bb (patch) | |
tree | 52086015c5ad11161971fa26bb5691bbb601e263 /ext/soap/php_encoding.c | |
parent | fabd95420080be6c628c642243292a74deefbdfa (diff) | |
download | php-git-07d7750487b924380c2d284c5753a963501303bb.tar.gz |
Fixed bug #36908 (wsdl default value overrides value in soap request).
Diffstat (limited to 'ext/soap/php_encoding.c')
-rw-r--r-- | ext/soap/php_encoding.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/ext/soap/php_encoding.c b/ext/soap/php_encoding.c index 683e35ef59..a4dfb012ab 100644 --- a/ext/soap/php_encoding.c +++ b/ext/soap/php_encoding.c @@ -1128,11 +1128,13 @@ static void model_to_zval_object(zval *ret, sdlContentModelPtr model, xmlNodePtr { switch (model->kind) { case XSD_CONTENT_ELEMENT: - if (model->u.element->name) { - xmlNodePtr node = get_node(data->children, model->u.element->name); - if (node) { - zval *val; + if (model->u.element->name) { + xmlNodePtr node = get_node(data->children, model->u.element->name); + if (node) { + zval *val; + + node = check_and_resolve_href(node); if (node && node->children && node->children->content) { if (model->u.element->fixed && strcmp(model->u.element->fixed,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); |