# File lib/rack/file.rb, line 34 def _call(env) @path_info = Utils.unescape(env["PATH_INFO"]) parts = @path_info.split SEPS return fail(403, "Forbidden") if parts.include? ".." @path = F.join(@root, *parts) available = begin F.file?(@path) && F.readable?(@path) rescue SystemCallError false end if available serving(env) else fail(404, "File not found: #{@path_info}") end end