src/server/webdav/xml.c

changeset 579
e10457d74fe1
parent 490
d218607f5a7e
equal deleted inserted replaced
578:eb48f716b31c 579:e10457d74fe1
288 cxMapRemove(nsmap, nskey); 288 cxMapRemove(nsmap, nskey);
289 def = def->next; 289 def = def->next;
290 } 290 }
291 291
292 // convert nsmap to a list 292 // convert nsmap to a list
293 CxIterator i = cxMapIteratorValues(nsmap); 293 CxMapIterator i = cxMapIteratorValues(nsmap);
294 WSNamespace *ns; 294 WSNamespace *ns;
295 cx_foreach(WSNamespace *, ns, i) { 295 cx_foreach(WSNamespace *, ns, i) {
296 WebdavNSList *newelm = pool_malloc(pool, sizeof(WebdavNSList)); 296 WebdavNSList *newelm = pool_malloc(pool, sizeof(WebdavNSList));
297 if(!newelm) { 297 if(!newelm) {
298 if(error) *error = 1; 298 if(error) *error = 1;
304 newelm->prev = NULL; 304 newelm->prev = NULL;
305 cx_linked_list_add((void**)&list, (void**)&end, offsetof(WebdavNSList, prev), offsetof(WebdavNSList, next), newelm); 305 cx_linked_list_add((void**)&list, (void**)&end, offsetof(WebdavNSList, prev), offsetof(WebdavNSList, next), newelm);
306 } 306 }
307 } 307 }
308 308
309 cxMapDestroy(nsmap); 309 cxMapFree(nsmap);
310 return list; 310 return list;
311 } 311 }
312 312
313 313
314 static ssize_t buf_writefunc(void *buf, const char *s, size_t len) { 314 static ssize_t buf_writefunc(void *buf, const char *s, size_t len) {

mercurial