# HG changeset patch # User Olaf Wintermann # Date 1409584158 -7200 # Node ID cdca2eef48ee54eba27869a8af1cf2762fb3ec42 # Parent ec68175aad257bdf5f3d47950448d29c05eeb90c fixed propfind response parser bug diff -r ec68175aad25 -r cdca2eef48ee libidav/methods.c --- a/libidav/methods.c Tue Aug 05 14:05:11 2014 +0200 +++ b/libidav/methods.c Mon Sep 01 17:09:18 2014 +0200 @@ -278,11 +278,18 @@ } //char *href = (char*)href_node->content; href = util_url_path((char*)href_node->content); - if(xstreq(resource->href, href)) { + + sstr_t href_s = sstr((char*)href); + sstr_t href_r = sstr(resource->href); + if(!sstrcmp(href_s, href_r)) { res = resource; - } else { - //res = dav_resource_new_href(resource->session, href); - //res->parent = resource; + } else if(href_s.length == href_r.length + 1) { + if(href_s.ptr[href_s.length-1] == '/') { + href_s.length--; + if(!sstrcmp(href_s, href_r)) { + res = resource; + } + } } } else if(xstreq(node->name, "propstat")) { xmlNode *n = node->children;