path = fs.realpath(basepath..'/'..params["path"])
- if is_in_dir(path,basepath) then
+ if path and is_in_dir(path,basepath) and fs.access(path,"r") then
files = {}
local rec
for name in fs.dir(path) do
- fstat=fs.stat(fs.realpath(path..'/'..name))
- if fstat["type"]=="reg" then
- ftype="file"
- elseif fstat["type"]=="dir" then
- ftype="dir"
- else
- ftype=""
- end
- if ftype then
- rec={name=name,rights=fstat["modestr"],size=fstat["size"],type=ftype,date=os.date('%Y-%m-%d %H:%M:%S',fstat["mtime"])}
- table.insert(files,rec)
- end
+ basename=fs.realpath(path..'/'..name)
+ if basename then
+ fstat=fs.stat(fs.realpath(path..'/'..name))
+ if fstat["type"]=="reg" then
+ ftype="file"
+ elseif fstat["type"]=="dir" then
+ ftype="dir"
+ else
+ ftype=""
+ end
+ if ftype then
+ rec={name=name,rights=fstat["modestr"],size=fstat["size"],type=ftype,date=os.date('%Y-%m-%d %H:%M:%S',fstat["mtime"])}
+ table.insert(files,rec)
+ end
+ end
end
result = { result = files }
else