--- a/dav/db.c Fri Aug 02 21:40:05 2019 +0200 +++ b/dav/db.c Fri Aug 02 22:04:00 2019 +0200 @@ -215,6 +215,8 @@ field = 11; } else if(xstreq(name, "link")) { field = 12; + } else if(xstreq(name, "localpath")) { + field = 13; } else if(xstreq(name, "skipped")) { res->skipped = TRUE; } else if(xstreq(name, "tags-updated")) { @@ -314,6 +316,9 @@ res->link_target = strdup((char*)value); break; } + case 13: { + res->local_path = strdup((char*)value); + } } } else if(XML_READER_TYPE_END_ELEMENT) { if(xstreq(name, "resource")) { @@ -533,6 +538,19 @@ } } + if(res->local_path) { + r = xmlTextWriterWriteElement( + writer, + BAD_CAST "localpath", + BAD_CAST res->local_path); + if(r < 0) { + fprintf(stderr, "Cannot write localpath: %s\n", res->local_path); + xmlFreeTextWriter(writer); + return -1; + } + } + + if(res->xattr_hash) { r = xmlTextWriterWriteElement( writer,