cvs: php-src /ext/simplexml simplexml.c
| From: | Sterling Hughes | Date: | Mon, 30 Jun 2003 03:08:49 +0000 |
| Subject: | cvs: php-src /ext/simplexml simplexml.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-22164@lists.php.net to get a copy of this message | ||
sterling Sun Jun 29 23:08:49 2003 EDT
Modified files:
/php-src/ext/simplexml simplexml.c
Log:
satisfy my very first user :)
Index: php-src/ext/simplexml/simplexml.c
diff -u php-src/ext/simplexml/simplexml.c:1.44 php-src/ext/simplexml/simplexml.c:1.45
--- php-src/ext/simplexml/simplexml.c:1.44 Sat Jun 28 17:38:44 2003
+++ php-src/ext/simplexml/simplexml.c Sun Jun 29 23:08:48 2003
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: simplexml.c,v 1.44 2003/06/28 21:38:44 rrichards Exp $ */
+/* $Id: simplexml.c,v 1.45 2003/06/30 03:08:48 sterling Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -84,7 +84,18 @@
static inline int
match_ns(php_sxe_object *sxe, xmlNodePtr node, xmlChar *name)
{
- if (!xmlStrcmp(node->ns->prefix, name) || !xmlStrcmp((xmlChar *)
xmlHashLookup(sxe->nsmap, node->ns->href), name)) {
+ xmlChar *prefix;
+
+ prefix = xmlHashLookup(sxe->nsmap, node->ns->href);
+ if (prefix == NULL) {
+ prefix = node->ns->prefix;
+ }
+
+ if (prefix == NULL) {
+ return 0;
+ }
+
+ if (!xmlStrcmp(prefix, name)) {
return 1;
}
@@ -139,7 +150,7 @@
if (node->ns) {
if (node->parent->ns) {
if (!xmlStrcmp(node->ns->href, node->parent->ns->href)) {
- goto next_iter;
+ goto this_iter;
}
}
@@ -150,6 +161,7 @@
goto next_iter;
}
}
+this_iter:
if (!xmlStrcmp(node->name, name)) {
APPEND_PREV_ELEMENT(counter, value);
@@ -1048,7 +1060,7 @@
{
php_info_print_table_start();
php_info_print_table_header(2, "Simplexml support", "enabled");
- php_info_print_table_row(2, "Revision", "$Revision: 1.44 $");
+ php_info_print_table_row(2, "Revision", "$Revision: 1.45 $");
php_info_print_table_end();
}