[seed] xml: node.children should only be the first child, not an array



commit 12eae07b7395df34ace9064befac1df0683e51dd
Author: Robert Carr <racarr svn gnome org>
Date:   Tue May 12 00:06:25 2009 -0400

    xml: node.children should only be the first child, not an array
---
 modules/libxml/libxml.c |   35 +++++------------------------------
 1 files changed, 5 insertions(+), 30 deletions(-)

diff --git a/modules/libxml/libxml.c b/modules/libxml/libxml.c
index c118f83..5d4b286 100644
--- a/modules/libxml/libxml.c
+++ b/modules/libxml/libxml.c
@@ -71,30 +71,6 @@ seed_xml_parse_file (SeedContext ctx,
 }
 
 static SeedValue
-seed_xml_node_make_child_array (SeedContext ctx,
-				xmlNodePtr node,
-				SeedException exception)
-{
-  SeedValue ret;
-  xmlNodePtr child;
-  GArray *a;
-  
-  child = node->xmlChildrenNode;
-
-  a = g_array_new (FALSE, FALSE, sizeof (SeedValue));
-  while (child != NULL) {
-    SeedObject jsnode = seed_make_xml_node (ctx, child);
-    g_array_append_val (a, jsnode);
-    
-    child = child->next;
-  }
-  ret = seed_make_array (ctx, (SeedValue)a->data, a->len, exception);
-  g_array_free (a, TRUE);
-  
-  return ret;
-}
-
-static SeedValue
 seed_xml_doc_get_root (SeedContext ctx,
 		       SeedObject object,
 		       SeedString property_name,
@@ -112,9 +88,9 @@ seed_xml_doc_get_children (SeedContext ctx,
 {
   xmlDocPtr doc = XML_DOC_PRIV (object);
  
-  return seed_xml_node_make_child_array (ctx, 
-					 xmlDocGetRootElement (doc), 
-					 exception);
+  return seed_make_xml_node (ctx, 
+			     xmlDocGetRootElement (doc)->children);
+
 }
 
 
@@ -143,9 +119,8 @@ seed_xml_node_get_children (SeedContext ctx,
 {
   xmlNodePtr node = XML_NODE_PRIV (object);
  
-  return seed_xml_node_make_child_array (ctx, 
-					 node,
-					 exception);
+  return seed_make_xml_node (ctx, node->children);
+
 }
 
 static SeedValue



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]