diff -r 0a109d9655c7 -r deae0da446a9 src/xmlnode.c --- a/src/xmlnode.c Sat Jan 24 22:40:59 2004 +0000 +++ b/src/xmlnode.c Sun Jan 25 19:12:58 2004 +0000 @@ -392,8 +392,12 @@ ret = new_node(src->name, src->type); if(src->data) { - ret->data = g_memdup(src->data, src->data_sz); - ret->data_sz = src->data_sz; + if(src->data_sz) { + ret->data = g_memdup(src->data, src->data_sz); + ret->data_sz = src->data_sz; + } else { + ret->data = g_strdup(src->data); + } } for(child = src->child; child; child = child->next) {