dav/db.c

changeset 692
56b66fe2b4f5
parent 681
3320429502cf
child 747
efbd59642577
equal deleted inserted replaced
691:48ec0ab17011 692:56b66fe2b4f5
215 field = 11; 215 field = 11;
216 } else if(xstreq(name, "link")) { 216 } else if(xstreq(name, "link")) {
217 field = 12; 217 field = 12;
218 } else if(xstreq(name, "localpath")) { 218 } else if(xstreq(name, "localpath")) {
219 field = 13; 219 field = 13;
220 } else if(xstreq(name, "versioncontrol")) {
221 field = 14;
220 } else if(xstreq(name, "skipped")) { 222 } else if(xstreq(name, "skipped")) {
221 res->skipped = TRUE; 223 res->skipped = TRUE;
222 } else if(xstreq(name, "tags-updated")) { 224 } else if(xstreq(name, "tags-updated")) {
223 res->tags_updated = TRUE; 225 res->tags_updated = TRUE;
224 } else if(xstreq(name, "parts")) { 226 } else if(xstreq(name, "parts")) {
319 break; 321 break;
320 } 322 }
321 case 13: { 323 case 13: {
322 res->local_path = strdup((char*)value); 324 res->local_path = strdup((char*)value);
323 } 325 }
326 case 14: {
327 res->versioncontrol = util_getboolean((char*)value);
328 }
324 } 329 }
325 } else if(XML_READER_TYPE_END_ELEMENT) { 330 } else if(XML_READER_TYPE_END_ELEMENT) {
326 if(xstreq(name, "resource")) { 331 if(xstreq(name, "resource")) {
327 break; 332 break;
328 } else { 333 } else {
641 return -1; 646 return -1;
642 } 647 }
643 } 648 }
644 r = xmlTextWriterEndElement(writer); 649 r = xmlTextWriterEndElement(writer);
645 if(r < 0) { 650 if(r < 0) {
651 xmlFreeTextWriter(writer);
652 return -1;
653 }
654 }
655
656 if(res->versioncontrol) {
657 r = xmlTextWriterWriteElement(
658 writer,
659 BAD_CAST "versioncontrol",
660 BAD_CAST "true");
661 if(r < 0) {
662 fprintf(stderr, "Cannot write versioncontrol\n");
646 xmlFreeTextWriter(writer); 663 xmlFreeTextWriter(writer);
647 return -1; 664 return -1;
648 } 665 }
649 } 666 }
650 667
764 newres->uid = src->uid; 781 newres->uid = src->uid;
765 newres->gid = src->gid; 782 newres->gid = src->gid;
766 newres->size = src->size; 783 newres->size = src->size;
767 newres->isdirectory = src->isdirectory; 784 newres->isdirectory = src->isdirectory;
768 newres->skipped = src->skipped; 785 newres->skipped = src->skipped;
786 newres->versioncontrol = src->versioncontrol;
769 787
770 if(src->xattr) { 788 if(src->xattr) {
771 XAttributes *xattr = calloc(1, sizeof(XAttributes)); 789 XAttributes *xattr = calloc(1, sizeof(XAttributes));
772 xattr->hash = nullstrdup(src->xattr->hash); 790 xattr->hash = nullstrdup(src->xattr->hash);
773 xattr->nattr = src->xattr->nattr; 791 xattr->nattr = src->xattr->nattr;

mercurial