From dd167fae45cb50522b580f3c56d0441eb07be25e Mon Sep 17 00:00:00 2001 From: Peter Bortas <zino@lysator.liu.se> Date: Sun, 9 May 2010 16:34:16 +0200 Subject: [PATCH] Fixed entity encoding. Makes files with spaces in them accessable. Rev: lib/modules/Tools.pmod/Standalone.pmod/httpserver.pike:1.5 --- lib/modules/Tools.pmod/Standalone.pmod/httpserver.pike | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/modules/Tools.pmod/Standalone.pmod/httpserver.pike b/lib/modules/Tools.pmod/Standalone.pmod/httpserver.pike index a50c05af0c..b37a9d74ec 100644 --- a/lib/modules/Tools.pmod/Standalone.pmod/httpserver.pike +++ b/lib/modules/Tools.pmod/Standalone.pmod/httpserver.pike @@ -59,13 +59,13 @@ string dirlist( string dir ) if( t == "application/octet-stream" ) t = "<span style='color:darkgrey'>unknown</span>"; - fn = Parser.encode_html_entities(fn); res += sprintf("<tr class='%s'><td><a href='%s%s'>%s%[2]s</a></td>" "<td align='right'>%s</td>" "<td align='right'>%s</td></tr>\n", (i&1?"odd":"even"), - fn, s->isdir?"/":"", fn, t, + Protocols.HTTP.uri_encode(fn), s->isdir?"/":"", + Parser.encode_html_entities(fn), t, s->isdir?"":String.int2size(s->size)); } return res+"</table></body></html>\n"; @@ -82,6 +82,7 @@ string file_not_found(string fname) void handle_request(Protocols.HTTP.Server.Request request) { string file = "."+combine_path("/",request->not_query); + file = Protocols.HTTP.uri_decode(file); Stdio.Stat s = file_stat( file ); if( !s ) request->response_and_finish( (["data": -- GitLab