]> granicus.if.org Git - php/commitdiff
Support for <![CDATA[ ]]> for string/hexbinary/base64binary data
authorDmitry Stogov <dmitry@php.net>
Fri, 23 Apr 2004 12:22:41 +0000 (12:22 +0000)
committerDmitry Stogov <dmitry@php.net>
Fri, 23 Apr 2004 12:22:41 +0000 (12:22 +0000)
ext/soap/php_encoding.c

index 451a659615fd6c9e6b41c0c2c9f5efa7b4fc2e6e..5bda11a881640b383eeb25afb138e7c97527e65b 100644 (file)
@@ -461,6 +461,8 @@ static zval *to_zval_string(encodeTypePtr type, xmlNodePtr data)
        if (data && data->children) {
                if (data->children->type == XML_TEXT_NODE && data->children->next == NULL) {
                        ZVAL_STRING(ret, data->children->content, 1);
+               } else if (data->children->type == XML_CDATA_SECTION_NODE && data->children->next == NULL) {
+                       ZVAL_STRING(ret, data->children->content, 1);
                } else {
                        php_error(E_ERROR,"SOAP-ERROR: Encoding: Violation of encoding rules");
                }
@@ -479,6 +481,8 @@ static zval *to_zval_stringr(encodeTypePtr type, xmlNodePtr data)
                if (data->children->type == XML_TEXT_NODE && data->children->next == NULL) {
                        whiteSpace_replace(data->children->content);
                        ZVAL_STRING(ret, data->children->content, 1);
+               } else if (data->children->type == XML_CDATA_SECTION_NODE && data->children->next == NULL) {
+                       ZVAL_STRING(ret, data->children->content, 1);
                } else {
                        php_error(E_ERROR,"SOAP-ERROR: Encoding: Violation of encoding rules");
                }
@@ -497,6 +501,8 @@ static zval *to_zval_stringc(encodeTypePtr type, xmlNodePtr data)
                if (data->children->type == XML_TEXT_NODE && data->children->next == NULL) {
                        whiteSpace_collapse(data->children->content);
                        ZVAL_STRING(ret, data->children->content, 1);
+               } else if (data->children->type == XML_CDATA_SECTION_NODE && data->children->next == NULL) {
+                       ZVAL_STRING(ret, data->children->content, 1);
                } else {
                        php_error(E_ERROR,"SOAP-ERROR: Encoding: Violation of encoding rules");
                }