This commit is contained in:
Kovid Goyal
2026-04-24 15:12:24 +05:30
parent 55c4519707
commit 68a4623f37
2 changed files with 6 additions and 11 deletions

View File

@@ -453,8 +453,8 @@ func CopyFolderContents(ctx context.Context, src_folder *os.File, dest_folder *o
do_one := func(src *RefCountedFile, dest *RefCountedFile) bool {
defer func() {
src.Unref()
dest.Unref()
src = src.Unref()
dest = dest.Unref()
}()
if is_cancelled() {
return false
@@ -530,17 +530,13 @@ func CopyFolderContents(ctx context.Context, src_folder *os.File, dest_folder *o
completed_channel <- err
return false
}
src = NewRefCountedFile(sf)
if err = MkdirAt(dest_parent.File(), child.Name(), child.Mode().Perm()); err != nil {
completed_channel <- err
return false
}
df, err := OpenDirAt(dest_parent.File(), child.Name())
df, err := CreateDirAt(dest_parent.File(), child.Name(), child.Mode().Perm())
if err != nil {
sf.Close()
completed_channel <- err
return false
}
dest = NewRefCountedFile(df)
src, dest = NewRefCountedFile(sf), NewRefCountedFile(df)
ok = true
return
}
@@ -553,7 +549,7 @@ func CopyFolderContents(ctx context.Context, src_folder *os.File, dest_folder *o
if v == nil {
break
}
n := v.Value.(*item)
n := queue.Remove(v).(*item)
if !next_dir(n.src_parent, n.dest_parent, n.child) {
return
}

View File

@@ -28,4 +28,3 @@ func readLinkAt(parent *os.File, name string, buf []byte) (n int, err error) {
}
return
}