diff -r 5dbef9e07376 -r 11dffb40cd91 dav/methods.c --- a/dav/methods.c Fri Aug 16 12:41:30 2013 +0200 +++ b/dav/methods.c Sat Aug 17 12:04:04 2013 +0200 @@ -150,10 +150,12 @@ return buf; } -DavResource* parse_propfind_response(DavSession *sn, UcxBuffer *response) { +DavResource* parse_propfind_response(DavSession *sn, DavResource *root, UcxBuffer *response) { char *url = NULL; curl_easy_getinfo(sn->handle, CURLINFO_EFFECTIVE_URL, &url); - DavResource *root = resource_new_href(sn, util_url_path(url)); + if(!root) { + root = resource_new_href(sn, util_url_path(url)); + } xmlDoc *doc = xmlReadMemory(response->space, response->size, url, NULL, 0); if(!doc) {