summaryrefslogtreecommitdiff
path: root/navit
diff options
context:
space:
mode:
authorsleske <sleske@ffa7fe5e-494d-0410-b361-a75ebd5db220>2012-08-29 21:15:34 +0000
committersleske <sleske@ffa7fe5e-494d-0410-b361-a75ebd5db220>2012-08-29 21:15:34 +0000
commit11334114f13948d5084a96b7279cdf1118d54a7a (patch)
treed7846070364fa9236de6cf916302942fa0c6a286 /navit
parent1a76694cc48c045bfdf297c545fa1361810d4567 (diff)
downloadnavit-11334114f13948d5084a96b7279cdf1118d54a7a.tar.gz
Fix:gui_internal:Do not crash if XML for internal GUI is missing/invalid.
git-svn-id: http://svn.code.sf.net/p/navit/code/trunk/navit@5221 ffa7fe5e-494d-0410-b361-a75ebd5db220
Diffstat (limited to 'navit')
-rw-r--r--navit/xmlconfig.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/navit/xmlconfig.c b/navit/xmlconfig.c
index 616c8d3ab..4b58999d0 100644
--- a/navit/xmlconfig.c
+++ b/navit/xmlconfig.c
@@ -1052,7 +1052,15 @@ xml_parse_text(const char *document, void *data, void (*start)(void *, const cha
gboolean result;
context = g_markup_parse_context_new (&parser, 0, data, NULL);
+ if (!document){
+ dbg(0, "FATAL: No XML data supplied (looks like incorrect configuration for internal GUI).\n");
+ exit(1);
+ }
result = g_markup_parse_context_parse (context, document, strlen(document), NULL);
+ if (!result){
+ dbg(0, "FATAL: Cannot parse data as XML: '%s'\n", document);
+ exit(1);
+ }
g_markup_parse_context_free (context);
#else
char *str=g_strdup(document);