]> Dogcows Code - chaz/openbox/blobdiff - parser/parse.c
back xml themes out of trunk
[chaz/openbox] / parser / parse.c
index 85ffc15168e2b2b2b57d558b325ce2205b0ae230..547203608021249d263ed61cbefa53b7ef0faeaa 100644 (file)
@@ -165,6 +165,7 @@ gboolean parse_load(const gchar *path, const gchar *rootname,
                     xmlDocPtr *doc, xmlNodePtr *root)
 {
     struct stat s;
+
     if (stat(path, &s) < 0)
         return FALSE;
 
@@ -242,7 +243,7 @@ gchar *parse_string(xmlDocPtr doc, xmlNodePtr node)
 gint parse_int(xmlDocPtr doc, xmlNodePtr node)
 {
     xmlChar *c = xmlNodeListGetString(doc, node->children, TRUE);
-    gint i = atoi((gchar*)c);
+    gint i = c ? atoi((gchar*)c) : 0;
     xmlFree(c);
     return i;
 }
@@ -251,11 +252,11 @@ gboolean parse_bool(xmlDocPtr doc, xmlNodePtr node)
 {
     xmlChar *c = xmlNodeListGetString(doc, node->children, TRUE);
     gboolean b = FALSE;
-    if (!xmlStrcasecmp(c, (const xmlChar*) "true"))
+    if (c && !xmlStrcasecmp(c, (const xmlChar*) "true"))
         b = TRUE;
-    else if (!xmlStrcasecmp(c, (const xmlChar*) "yes"))
+    else if (c && !xmlStrcasecmp(c, (const xmlChar*) "yes"))
         b = TRUE;
-    else if (!xmlStrcasecmp(c, (const xmlChar*) "on"))
+    else if (c && !xmlStrcasecmp(c, (const xmlChar*) "on"))
         b = TRUE;
     xmlFree(c);
     return b;
This page took 0.025101 seconds and 4 git commands to generate.