c.Ok = false
return c
}
+
+ verified := true
if c.Complete {
// If it's allegedly complete, check that its constituent files have the necessary length.
for _, fi := range extentCompleteRequiredLengths(fs.p.Info, fs.p.Offset(), fs.p.Length()) {
s, err := os.Stat(fs.files[fi.fileIndex].path)
if err != nil || s.Size() < fi.length {
- c.Complete = false
+ verified = false
break
}
}
}
- if !c.Complete {
+
+ if !verified {
// The completion was wrong, fix it.
+ c.Complete = false
fs.completion.Set(fs.pieceKey(), false)
}
+
return c
}