union: fix treatment of remotes with // in

See: https://forum.rclone.org/t/connection-string-with-union-backend-and-a-lot-of-quotes/27577
This commit is contained in:
Nick Craig-Wood 2021-11-19 17:07:57 +00:00
parent b5abbe819f
commit f26abc89a6

View File

@ -6,8 +6,6 @@ import (
"fmt"
"io"
"math"
"path"
"path/filepath"
"strings"
"sync"
"sync/atomic"
@ -91,7 +89,7 @@ func New(ctx context.Context, remote, root string, cacheTime time.Duration) (*Fs
return nil, err
}
f.RootFs = rFs
rootString := path.Join(remote, filepath.ToSlash(root))
rootString := fspath.JoinRootPath(remote, root)
myFs, err := cache.Get(ctx, rootString)
if err != nil && err != fs.ErrorIsFile {
return nil, err