mirror of
https://github.com/OpenListTeam/OpenList.git
synced 2026-10-10 04:53:09 +08:00
fix(stream): allow seeking beyond file size per Go convention (#2667)
Remove `offset > size` guard from RangeReadReadAtSeeker.Seek and DynamicReadAtSeeker.Seek. Go's io.Seeker convention allows seeking past EOF. Co-authored-by: Pikachu Ren <40362270+PIKACHUIM@users.noreply.github.com>
This commit is contained in:
@@ -519,7 +519,7 @@ func (r *RangeReadReadAtSeeker) Seek(offset int64, whence int) (int64, error) {
|
|||||||
default:
|
default:
|
||||||
return 0, errors.New("Seek: invalid whence")
|
return 0, errors.New("Seek: invalid whence")
|
||||||
}
|
}
|
||||||
if offset < 0 || offset > r.ss.GetSize() {
|
if offset < 0 {
|
||||||
return 0, errors.New("Seek: invalid offset")
|
return 0, errors.New("Seek: invalid offset")
|
||||||
}
|
}
|
||||||
r.masterOff = offset
|
r.masterOff = offset
|
||||||
|
|||||||
+1
-1
@@ -79,7 +79,7 @@ func (r *DynamicReadAtSeeker) Seek(offset int64, whence int) (int64, error) {
|
|||||||
return 0, errors.New("Seek: invalid whence")
|
return 0, errors.New("Seek: invalid whence")
|
||||||
}
|
}
|
||||||
|
|
||||||
if offset < 0 || offset > r.block.Size() {
|
if offset < 0 {
|
||||||
return 0, errors.New("Seek: invalid offset")
|
return 0, errors.New("Seek: invalid offset")
|
||||||
}
|
}
|
||||||
r.offset = offset
|
r.offset = offset
|
||||||
|
|||||||
Reference in New Issue
Block a user