aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorWilmer van der Gaast <wilmer@gaast.net>2012-09-22 13:12:12 +0100
committerWilmer van der Gaast <wilmer@gaast.net>2012-09-22 13:12:12 +0100
commitd0752e8b08d37395fd036046552fa6b4fb92ac17 (patch)
tree7e572ef12d0a59d4f497aa98be389d13e668f48e /lib
parent55ccc9a0dffdc96b7a5c6d41de2e97d2cd1741d9 (diff)
Little cleanup. Use xt_from_string() where possible.
Diffstat (limited to 'lib')
-rw-r--r--lib/xmltree.c7
-rw-r--r--lib/xmltree.h2
2 files changed, 6 insertions, 3 deletions
diff --git a/lib/xmltree.c b/lib/xmltree.c
index 74292be9..91d256d2 100644
--- a/lib/xmltree.c
+++ b/lib/xmltree.c
@@ -262,13 +262,16 @@ void xt_cleanup( struct xt_parser *xt, struct xt_node *node, int depth )
}
}
-struct xt_node *xt_from_string( const char *in )
+struct xt_node *xt_from_string( const char *in, int len )
{
struct xt_parser *parser;
struct xt_node *ret;
+ if( len == 0 )
+ len = strlen( in );
+
parser = xt_new( NULL, NULL );
- xt_feed( parser, in, strlen( in ) );
+ xt_feed( parser, in, len );
ret = parser->root;
parser->root = NULL;
xt_free( parser );
diff --git a/lib/xmltree.h b/lib/xmltree.h
index 5a0dbc8e..ac77fada 100644
--- a/lib/xmltree.h
+++ b/lib/xmltree.h
@@ -81,7 +81,7 @@ void xt_reset( struct xt_parser *xt );
int xt_feed( struct xt_parser *xt, const char *text, int text_len );
int xt_handle( struct xt_parser *xt, struct xt_node *node, int depth );
void xt_cleanup( struct xt_parser *xt, struct xt_node *node, int depth );
-struct xt_node *xt_from_string( const char *in );
+struct xt_node *xt_from_string( const char *in, int text_len );
char *xt_to_string( struct xt_node *node );
void xt_print( struct xt_node *node );
struct xt_node *xt_dup( struct xt_node *node );