summaryrefslogtreecommitdiffstats
path: root/database/sqlite/sqlite.c
diff options
context:
space:
mode:
Diffstat (limited to 'database/sqlite/sqlite.c')
-rw-r--r--database/sqlite/sqlite.c27
1 files changed, 14 insertions, 13 deletions
diff --git a/database/sqlite/sqlite.c b/database/sqlite/sqlite.c
index ab94783..dfb56a6 100644
--- a/database/sqlite/sqlite.c
+++ b/database/sqlite/sqlite.c
@@ -524,19 +524,20 @@ xmlNodePtr sqlite_xml_value(xmlNodePtr node, xmlFieldType xmltyp, char *inname,
assert( name != NULL );
data = xmlCharStrdup(sqlite_get_value(res, row, col));
-
- switch( xmltyp ) {
- case XML_ATTR:
- xmlNewProp(node, name, data);
- retnode = node;
- break;
-
- case XML_NODE:
- retnode = xmlNewChild(node, NULL, name, data);
- break;
-
- default:
- retnode = NULL;
+ if( xmlStrlen(data) > 0 ) {
+ switch( xmltyp ) {
+ case XML_ATTR:
+ xmlNewProp(node, name, data);
+ retnode = node;
+ break;
+
+ case XML_NODE:
+ retnode = xmlNewChild(node, NULL, name, data);
+ break;
+
+ default:
+ retnode = NULL;
+ }
}
free_nullsafe(data);
free_nullsafe(name);