drive: make DirMove more efficient and complain about moving the root
This commit is contained in:
parent
48a2e3844d
commit
d132dc7640
1 changed files with 7 additions and 3 deletions
|
@ -771,12 +771,16 @@ func (f *Fs) DirMove(src fs.Fs) error {
|
|||
}
|
||||
|
||||
// Check if destination exists
|
||||
f.dirCache.ResetRoot()
|
||||
err := f.dirCache.FindRoot(false)
|
||||
if err == nil {
|
||||
if f.dirCache.FoundRoot() {
|
||||
return fs.ErrorDirExists
|
||||
}
|
||||
|
||||
// Refuse to move to or from the root
|
||||
if f.root == "" || srcFs.root == "" {
|
||||
fs.Debug(src, "DirMove error: Can't move root")
|
||||
return errors.New("can't move root directory")
|
||||
}
|
||||
|
||||
// Find ID of parent
|
||||
leaf, directoryID, err := f.dirCache.FindPath(f.root, true)
|
||||
if err != nil {
|
||||
|
|
Loading…
Reference in a new issue