helly Sun Feb 26 12:00:39 2006 UTC Modified files: /php-src/ext/simplexml simplexml.c Log: - Unicode support http://cvs.php.net/viewcvs.cgi/php-src/ext/simplexml/simplexml.c?r1=1.189&r2=1.190&diff_format=u Index: php-src/ext/simplexml/simplexml.c diff -u php-src/ext/simplexml/simplexml.c:1.189 php-src/ext/simplexml/simplexml.c:1.190 --- php-src/ext/simplexml/simplexml.c:1.189 Sat Feb 25 23:41:06 2006 +++ php-src/ext/simplexml/simplexml.c Sun Feb 26 12:00:39 2006 @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: simplexml.c,v 1.189 2006/02/25 23:41:06 helly Exp $ */ +/* $Id: simplexml.c,v 1.190 2006/02/26 12:00:39 helly Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -458,6 +458,20 @@ mynode = node; + switch (Z_TYPE_P(value)) { + case IS_LONG: + case IS_BOOL: + case IS_DOUBLE: + case IS_NULL: + case IS_UNICODE: + convert_to_string(value); + break; + case IS_STRING: + break; + default: + php_error_docref(NULL TSRMLS_CC, E_WARNING, "It is not yet possible to assign complex types to %s", attribs ? "attributes" : "properties"); + } + if (node) { if (attribs) { if (Z_TYPE_P(member) == IS_LONG) { @@ -527,22 +541,8 @@ } xmlNewTextChild(mynode->parent, mynode->ns, mynode->name, Z_STRVAL_P(value)); } - } else { - if (attribs) { - switch (Z_TYPE_P(value)) { - case IS_LONG: - case IS_BOOL: - case IS_DOUBLE: - case IS_NULL: - case IS_UNICODE: - convert_to_string(value); - case IS_STRING: - newnode = (xmlNodePtr)xmlNewProp(node, name, Z_STRVAL_P(value)); - break; - default: - php_error_docref(NULL TSRMLS_CC, E_WARNING, "It is not yet possible to assign complex types to attributes"); - } - } + } else if (attribs) { + newnode = (xmlNodePtr)xmlNewProp(node, name, Z_STRVAL_P(value)); } } @@ -1273,7 +1273,7 @@ GET_NODE(sxe, node); namelen = xmlStrlen(node->name); - RETURN_STRINGL((char*)node->name, namelen, 1); + RETURN_ASCII_STRINGL((char*)node->name, namelen, 1); } /* }}} */ @@ -2067,7 +2067,7 @@ { php_info_print_table_start(); php_info_print_table_header(2, "Simplexml support", "enabled"); - php_info_print_table_row(2, "Revision", "$Revision: 1.189 $"); + php_info_print_table_row(2, "Revision", "$Revision: 1.190 $"); php_info_print_table_row(2, "Schema support", #ifdef LIBXML_SCHEMAS_ENABLED "enabled");
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php