forked from TrueCloudLab/rclone
vfs: fix crash when truncating a just uploaded object - Fixes #5522
This commit is contained in:
parent
bec253fd39
commit
a5f277f47e
1 changed files with 6 additions and 1 deletions
|
@ -744,7 +744,6 @@ func (f *File) Truncate(size int64) (err error) {
|
|||
f.mu.Lock()
|
||||
writers := make([]Handle, len(f.writers))
|
||||
copy(writers, f.writers)
|
||||
o := f.o
|
||||
f.mu.Unlock()
|
||||
|
||||
// FIXME: handle closing writer
|
||||
|
@ -761,6 +760,12 @@ func (f *File) Truncate(size int64) (err error) {
|
|||
return err
|
||||
}
|
||||
|
||||
// if o is nil it isn't valid yet
|
||||
o, err := f.waitForValidObject()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// If no writers, and size is already correct then all done
|
||||
if o.Size() == size {
|
||||
return nil
|
||||
|
|
Loading…
Reference in a new issue