From e8d0a363fc71fbff43eeff2472855a452a8348fa Mon Sep 17 00:00:00 2001 From: Nick Craig-Wood Date: Tue, 16 Oct 2018 21:55:19 +0100 Subject: [PATCH] opendrive: fix transfer of files with + and & in - fixes #2657 --- backend/opendrive/opendrive.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/backend/opendrive/opendrive.go b/backend/opendrive/opendrive.go index 24673c882..352220e14 100644 --- a/backend/opendrive/opendrive.go +++ b/backend/opendrive/opendrive.go @@ -6,6 +6,7 @@ import ( "io" "mime/multipart" "net/http" + "net/url" "path" "strconv" "strings" @@ -1082,7 +1083,7 @@ func (o *Object) readMetaData() (err error) { err = o.fs.pacer.Call(func() (bool, error) { opts := rest.Opts{ Method: "GET", - Path: "/folder/itembyname.json/" + o.fs.session.SessionID + "/" + directoryID + "?name=" + rest.URLPathEscape(replaceReservedChars(leaf)), + Path: "/folder/itembyname.json/" + o.fs.session.SessionID + "/" + directoryID + "?name=" + url.QueryEscape(replaceReservedChars(leaf)), } resp, err = o.fs.srv.CallJSON(&opts, nil, &folderList) return o.fs.shouldRetry(resp, err)