diff -r 6bb9479d9c64 -r 78935b45e2ce dav/config.c --- a/dav/config.c Sat Aug 17 14:57:17 2013 +0200 +++ b/dav/config.c Mon Aug 19 12:50:42 2013 +0200 @@ -122,11 +122,23 @@ node = node->next; } - if(repo->name) { - ucx_map_cstr_put(repos, repo->name, repo); - } else { - // TODO: free + if(!repo->name) { + fprintf( + stderr, + "Cannot load config.xml: missing name for repository.\n"); + fprintf(stderr, "Abort.\n"); + exit(-1); } + if(!repo->url) { + fprintf( + stderr, + "Cannot load config.xml: " + "missing url for repository '%s'.\n", repo->name); + fprintf(stderr, "Abort.\n"); + exit(-1); + } + + ucx_map_cstr_put(repos, repo->name, repo); } void load_key(xmlNode *keynode) {