72 |
72 |
73 // get first propfind object |
73 // get first propfind object |
74 WebdavPropfindRequest *propfind = op->requests->data; |
74 WebdavPropfindRequest *propfind = op->requests->data; |
75 |
75 |
76 // execute propfind_do of the first backend for the first resource |
76 // execute propfind_do of the first backend for the first resource |
|
77 int ret = REQ_PROCEED; |
77 if(op->dav->propfind_do(propfind, op->response, NULL, resource, s)) { |
78 if(op->dav->propfind_do(propfind, op->response, NULL, resource, s)) { |
78 return REQ_ABORTED; |
79 ret = REQ_ABORTED; |
79 } |
80 } else { |
80 |
81 // propfind_do successful, close resource if needed |
81 return REQ_PROCEED; |
82 // closing the resource will execute propfind_do of all remaining |
|
83 // backends |
|
84 if(!resource->isclosed) { |
|
85 ret = resource->close(resource); |
|
86 } |
|
87 } |
|
88 |
|
89 return ret; |
82 } |
90 } |
83 |
91 |
84 int webdav_op_propfind_children( |
92 int webdav_op_propfind_children( |
85 WebdavOperation *op, |
93 WebdavOperation *op, |
86 VFSContext *vfs, |
94 VFSContext *vfs, |