471 |
471 |
472 DavQLArgList *args = dav_ql_get_args(st, ap); |
472 DavQLArgList *args = dav_ql_get_args(st, ap); |
473 if(!args) { |
473 if(!args) { |
474 return result; |
474 return result; |
475 } |
475 } |
476 util_regdestr(mp, args, (cx_destructor_func)dav_ql_free_arglist); |
476 cxMempoolRegister(mp, args, (cx_destructor_func)dav_ql_free_arglist); |
477 |
477 |
478 int isallprop; |
478 int isallprop; |
479 CxBuffer *rqbuf = fieldlist2propfindrequest(sn, mp->allocator, st->fields, &isallprop); |
479 CxBuffer *rqbuf = fieldlist2propfindrequest(sn, mp->allocator, st->fields, &isallprop); |
480 if(!rqbuf) { |
480 if(!rqbuf) { |
481 cxMempoolDestroy(mp); |
481 cxMempoolDestroy(mp); |
482 return result; |
482 return result; |
483 } |
483 } |
484 util_regdestr(mp, rqbuf, (cx_destructor_func)cxBufferFree); |
484 cxMempoolRegister(mp, rqbuf, (cx_destructor_func)cxBufferFree); |
485 |
485 |
486 // compile field list |
486 // compile field list |
487 CxList *cfieldlist = cxLinkedListCreate(mp->allocator, NULL, CX_STORE_POINTERS); |
487 CxList *cfieldlist = cxLinkedListCreate(mp->allocator, NULL, CX_STORE_POINTERS); |
488 if(st->fields) { |
488 if(st->fields) { |
489 CxIterator i = cxListIterator(st->fields); |
489 CxIterator i = cxListIterator(st->fields); |