dav/db.c

changeset 572
1eac93fcef77
parent 567
b0ce8b27978b
child 611
a7c48e0dca88
equal deleted inserted replaced
571:f6de48471c9c 572:1eac93fcef77
211 field = 9; 211 field = 9;
212 } else if(xstreq(name, "blocksize")) { 212 } else if(xstreq(name, "blocksize")) {
213 field = 10; 213 field = 10;
214 } else if(xstreq(name, "hash")) { 214 } else if(xstreq(name, "hash")) {
215 field = 11; 215 field = 11;
216 } else if(xstreq(name, "link")) {
217 field = 12;
216 } else if(xstreq(name, "skipped")) { 218 } else if(xstreq(name, "skipped")) {
217 res->skipped = TRUE; 219 res->skipped = TRUE;
218 } else if(xstreq(name, "tags-updated")) { 220 } else if(xstreq(name, "tags-updated")) {
219 res->tags_updated = TRUE; 221 res->tags_updated = TRUE;
220 } else if(xstreq(name, "parts")) { 222 } else if(xstreq(name, "parts")) {
306 } 308 }
307 case 11: { 309 case 11: {
308 res->hash = strdup((char*)value); 310 res->hash = strdup((char*)value);
309 break; 311 break;
310 } 312 }
313 case 12: {
314 res->link_target = strdup((char*)value);
315 break;
316 }
311 } 317 }
312 } else if(XML_READER_TYPE_END_ELEMENT) { 318 } else if(XML_READER_TYPE_END_ELEMENT) {
313 if(xstreq(name, "resource")) { 319 if(xstreq(name, "resource")) {
314 break; 320 break;
315 } else { 321 } else {
508 writer, 514 writer,
509 BAD_CAST "tags-hash", 515 BAD_CAST "tags-hash",
510 BAD_CAST res->tags_hash); 516 BAD_CAST res->tags_hash);
511 if(r < 0) { 517 if(r < 0) {
512 fprintf(stderr, "Cannot write tags-hash: %s\n", res->tags_hash); 518 fprintf(stderr, "Cannot write tags-hash: %s\n", res->tags_hash);
519 xmlFreeTextWriter(writer);
520 return -1;
521 }
522 }
523
524 if(res->link_target) {
525 r = xmlTextWriterWriteElement(
526 writer,
527 BAD_CAST "link",
528 BAD_CAST res->link_target);
529 if(r < 0) {
530 fprintf(stderr, "Cannot write link: %s\n", res->link_target);
513 xmlFreeTextWriter(writer); 531 xmlFreeTextWriter(writer);
514 return -1; 532 return -1;
515 } 533 }
516 } 534 }
517 535

mercurial