dav/db.c

changeset 535
d814ee31c04f
parent 525
26a1d5b9d9d2
child 536
877f7c4a203b
equal deleted inserted replaced
534:9a4857d6444e 535:d814ee31c04f
133 field = 7; 133 field = 7;
134 } else if(xstreq(name, "xattr-hash")) { 134 } else if(xstreq(name, "xattr-hash")) {
135 field = 8; 135 field = 8;
136 } else if(xstreq(name, "remote-tags-hash")) { 136 } else if(xstreq(name, "remote-tags-hash")) {
137 field = 9; 137 field = 9;
138 } else if(xstreq(name, "blocksize")) {
139 field = 10;
138 } else if(xstreq(name, "skipped")) { 140 } else if(xstreq(name, "skipped")) {
139 res->skipped = TRUE; 141 res->skipped = TRUE;
140 } else if(xstreq(name, "tags-updated")) { 142 } else if(xstreq(name, "tags-updated")) {
141 res->tags_updated = TRUE; 143 res->tags_updated = TRUE;
142 } 144 }
209 } 211 }
210 case 9: { 212 case 9: {
211 res->remote_tags_hash = strdup((char*)value); 213 res->remote_tags_hash = strdup((char*)value);
212 break; 214 break;
213 } 215 }
216 case 10: {
217 int64_t blsz = 0;
218 if(util_strtoint((char*)value, &blsz)) {
219 if(blsz < -1) {
220 blsz = -1;
221 }
222 if(blsz > 0 && blsz < 16) {
223 blsz = 0;
224 }
225 res->blocksize = blsz;
226 }
227 }
214 } 228 }
215 } else if(XML_READER_TYPE_END_ELEMENT) { 229 } else if(XML_READER_TYPE_END_ELEMENT) {
216 if(xstreq(name, "resource")) { 230 if(xstreq(name, "resource")) {
217 break; 231 break;
218 } else { 232 } else {
321 fprintf(stderr, "Cannot write lastmodified\n"); 335 fprintf(stderr, "Cannot write lastmodified\n");
322 xmlFreeTextWriter(writer); 336 xmlFreeTextWriter(writer);
323 return -1; 337 return -1;
324 } 338 }
325 339
340 if(res->blocksize != 0) {
341 r = xmlTextWriterWriteFormatElement(
342 writer,
343 BAD_CAST "mode",
344 "%" PRId64,
345 res->blocksize);
346 if(r < 0) {
347 fprintf(stderr, "Cannot write blocksize\n");
348 xmlFreeTextWriter(writer);
349 return -1;
350 }
351 }
352
326 if(settings & DB_STORE_MODE == DB_STORE_MODE) { 353 if(settings & DB_STORE_MODE == DB_STORE_MODE) {
327 r = xmlTextWriterWriteFormatElement( 354 r = xmlTextWriterWriteFormatElement(
328 writer, 355 writer,
329 BAD_CAST "mode", 356 BAD_CAST "mode",
330 "%o", 357 "%o",

mercurial