diff -r 51d9a15eac98 -r d7a186cf87f6 src/server/safs/nametrans.c --- a/src/server/safs/nametrans.c Sat Oct 22 11:27:39 2016 +0200 +++ b/src/server/safs/nametrans.c Sun Oct 23 10:52:54 2016 +0200 @@ -29,6 +29,7 @@ #include "nametrans.h" #include "../daemon/log.h" +#include "../daemon/request.h" #include "../util/pblock.h" #include "../util/util.h" @@ -90,7 +91,8 @@ sstr_t root_str = sstr(root); sstr_t uri_str = sstr(pblock_findkeyval(pb_key_uri, rq->reqpb)); - util_add_ppath(root_str, uri_str, rq->vars); + + request_set_path(root_str, uri_str, rq->vars); return REQ_PROCEED; } @@ -144,13 +146,18 @@ if(uri[0] == '/') { uri++; } + + sstr_t ppath = util_path_append(sn->pool, dir, uri); + pblock_kvinsert( pb_key_ppath, ppath.ptr, ppath.length, rq->vars); + request_set_path(sstr(dir), sstr(uri), rq->vars); + if(name) { // add object to rq->vars pblock_kvinsert(pb_key_name, name, strlen(name), rq->vars);