From 81040ae6bab3b16f36b8f9d6d90df088159637b5 Mon Sep 17 00:00:00 2001 From: Pacien TRAN-GIRARD Date: Fri, 21 Sep 2012 23:44:21 +0200 Subject: Correct path trimming for Windows ("\"). --- src/ninjacloud.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/ninjacloud.go b/src/ninjacloud.go index 3e1f3e3..c3e5322 100644 --- a/src/ninjacloud.go +++ b/src/ninjacloud.go @@ -285,7 +285,9 @@ func listDir(path string, recursive bool, filter []string, returnType string) (l func fileHandler(w http.ResponseWriter, r *http.Request) { w.Header().Add("Cache-Control", "no-cache") p := filepath.Clean(r.URL.Path[filePathLen:]) - p = strings.TrimLeft(p, driveName+"/") + p = strings.TrimLeft(p, driveName) + p = strings.TrimLeft(p, "/") + p = strings.TrimLeft(p, "\\") if filepath.IsAbs(p) { w.WriteHeader(http.StatusForbidden) return @@ -465,7 +467,9 @@ func fileHandler(w http.ResponseWriter, r *http.Request) { func dirHandler(w http.ResponseWriter, r *http.Request) { w.Header().Add("Cache-Control", "no-cache") p := filepath.Clean(r.URL.Path[dirPathLen:]) - p = strings.TrimLeft(p, driveName+"/") + p = strings.TrimLeft(p, driveName) + p = strings.TrimLeft(p, "/") + p = strings.TrimLeft(p, "\\") if filepath.IsAbs(p) { w.WriteHeader(http.StatusForbidden) return -- cgit v1.2.3