src/server/webdav/webdav.c

branch
webdav
changeset 221
ff5826fc6a6c
parent 220
2915b6c11aec
child 222
5f05e56cb8e2
equal deleted inserted replaced
220:2915b6c11aec 221:ff5826fc6a6c
185 185
186 WebdavBackend *dav = rq->davCollection ? 186 WebdavBackend *dav = rq->davCollection ?
187 rq->davCollection : &default_backend; 187 rq->davCollection : &default_backend;
188 188
189 189
190 // requested uri path 190 // requested uri and path
191 char *path = pblock_findkeyval(pb_key_path, rq->vars); 191 char *path = pblock_findkeyval(pb_key_path, rq->vars);
192 char *uri = pblock_findkeyval(pb_key_uri, rq->reqpb);
192 193
193 // VFS settings are only taken from the first backend 194 // VFS settings are only taken from the first backend
194 uint32_t settings = dav->settings; 195 uint32_t settings = dav->settings;
195 196
196 // list of individual WebdavPropfindRequest objects for each Backend 197 // list of individual WebdavPropfindRequest objects for each Backend
252 // the webdav backend has not disabled vfs usage 253 // the webdav backend has not disabled vfs usage
253 // the file is a directory 254 // the file is a directory
254 // depth is not 0 255 // depth is not 0
255 // in this case we need to execute propfind_do for all children 256 // in this case we need to execute propfind_do for all children
256 if(usevfs) { 257 if(usevfs) {
257 if(!webdav_op_propfind_children(op, vfs, path)) { 258 if(!webdav_op_propfind_children(op, vfs, uri, path)) {
258 ret = REQ_ABORTED; 259 ret = REQ_ABORTED;
259 } 260 }
260 } 261 }
261 } 262 }
262 263

mercurial