dav/db.c

changeset 692
56b66fe2b4f5
parent 681
3320429502cf
child 747
efbd59642577
--- a/dav/db.c	Thu Dec 05 10:46:39 2019 +0100
+++ b/dav/db.c	Thu Dec 05 12:37:48 2019 +0100
@@ -217,6 +217,8 @@
                 field = 12;
             } else if(xstreq(name, "localpath")) {
                 field = 13;
+            } else if(xstreq(name, "versioncontrol")) {
+                field = 14;
             } else if(xstreq(name, "skipped")) {
                 res->skipped = TRUE;
             } else if(xstreq(name, "tags-updated")) {
@@ -321,6 +323,9 @@
                 case 13: {
                     res->local_path = strdup((char*)value);
                 }
+                case 14: {
+                    res->versioncontrol = util_getboolean((char*)value);
+                }
             }
         } else if(XML_READER_TYPE_END_ELEMENT) {
             if(xstreq(name, "resource")) {
@@ -648,6 +653,18 @@
             }
         }
         
+        if(res->versioncontrol) {
+            r = xmlTextWriterWriteElement(
+                    writer,
+                    BAD_CAST "versioncontrol",
+                    BAD_CAST "true");
+            if(r < 0) {
+                fprintf(stderr, "Cannot write versioncontrol\n");
+                xmlFreeTextWriter(writer);
+                return -1;
+            }
+        }
+        
         // </resource>
         xmlTextWriterEndElement(writer);
     }
@@ -766,6 +783,7 @@
     newres->size = src->size;
     newres->isdirectory = src->isdirectory;
     newres->skipped = src->skipped;
+    newres->versioncontrol = src->versioncontrol;
     
     if(src->xattr) {
         XAttributes *xattr = calloc(1, sizeof(XAttributes));

mercurial