557 int msresponse_close(WebdavResource *res) { |
557 int msresponse_close(WebdavResource *res) { |
558 MSResponse *response = (MSResponse*)res; |
558 MSResponse *response = (MSResponse*)res; |
559 if(response->closing) { |
559 if(response->closing) { |
560 return 0; // close already in progress |
560 return 0; // close already in progress |
561 } |
561 } |
|
562 response->closing = TRUE; |
562 Multistatus *ms = response->multistatus; |
563 Multistatus *ms = response->multistatus; |
563 |
564 |
564 int ret = REQ_PROCEED; |
565 int ret = REQ_PROCEED; |
|
566 |
|
567 // PROPFIND: |
|
568 // response_close will execute propfind_do of all remaining backends |
|
569 // after that we will have all available properties |
565 WebdavOperation *op = ms->response.op; |
570 WebdavOperation *op = ms->response.op; |
566 if(op->response_close(op, res)) { |
571 if(op->response_close(op, res)) { |
567 ret = REQ_ABORTED; |
572 ret = REQ_ABORTED; |
568 } |
573 } |
569 |
574 |