mirror of
https://github.com/rclone/rclone.git
synced 2025-06-26 06:51:36 +02:00
googlecloudstorage: fix directory marker after // changes in #5858
Before this change we were creating the directory markers with double slashes on.
This commit is contained in:
parent
1dc3421c7f
commit
81fccd9c39
@ -483,6 +483,9 @@ func parsePath(path string) (root string) {
|
|||||||
// relative to f.root
|
// relative to f.root
|
||||||
func (f *Fs) split(rootRelativePath string) (bucketName, bucketPath string) {
|
func (f *Fs) split(rootRelativePath string) (bucketName, bucketPath string) {
|
||||||
bucketName, bucketPath = bucket.Split(bucket.Join(f.root, rootRelativePath))
|
bucketName, bucketPath = bucket.Split(bucket.Join(f.root, rootRelativePath))
|
||||||
|
if f.opt.DirectoryMarkers && strings.HasSuffix(bucketPath, "//") {
|
||||||
|
bucketPath = bucketPath[:len(bucketPath)-1]
|
||||||
|
}
|
||||||
return f.opt.Enc.FromStandardName(bucketName), f.opt.Enc.FromStandardPath(bucketPath)
|
return f.opt.Enc.FromStandardName(bucketName), f.opt.Enc.FromStandardPath(bucketPath)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -712,7 +715,7 @@ func (f *Fs) list(ctx context.Context, bucket, directory, prefix string, addBuck
|
|||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
// process directory markers as directories
|
// process directory markers as directories
|
||||||
remote = strings.TrimRight(remote, "/")
|
remote, _ = strings.CutSuffix(remote, "/")
|
||||||
}
|
}
|
||||||
remote = remote[len(prefix):]
|
remote = remote[len(prefix):]
|
||||||
if addBucket {
|
if addBucket {
|
||||||
@ -959,7 +962,7 @@ func (f *Fs) Mkdir(ctx context.Context, dir string) (err error) {
|
|||||||
|
|
||||||
// mkdirParent creates the parent bucket/directory if it doesn't exist
|
// mkdirParent creates the parent bucket/directory if it doesn't exist
|
||||||
func (f *Fs) mkdirParent(ctx context.Context, remote string) error {
|
func (f *Fs) mkdirParent(ctx context.Context, remote string) error {
|
||||||
remote = strings.TrimRight(remote, "/")
|
remote, _ = strings.CutSuffix(remote, "/")
|
||||||
dir := path.Dir(remote)
|
dir := path.Dir(remote)
|
||||||
if dir == "/" || dir == "." {
|
if dir == "/" || dir == "." {
|
||||||
dir = ""
|
dir = ""
|
||||||
|
Loading…
x
Reference in New Issue
Block a user