aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2021-05-09 23:04:24 -0700
committerChris Lu <chris.lu@gmail.com>2021-05-09 23:04:24 -0700
commitba778333438114c2986e7942f138792731dc8081 (patch)
tree1338df6d17951d2df81135e2a011b4b915978c73
parentf4cf30b497cc50f3b7536568263ec2882714c7f4 (diff)
downloadseaweedfs-ba778333438114c2986e7942f138792731dc8081.tar.xz
seaweedfs-ba778333438114c2986e7942f138792731dc8081.zip
EOF handling
-rw-r--r--weed/filesys/dirty_pages_temp_interval.go3
1 files changed, 3 insertions, 0 deletions
diff --git a/weed/filesys/dirty_pages_temp_interval.go b/weed/filesys/dirty_pages_temp_interval.go
index a7252a808..f423b0e85 100644
--- a/weed/filesys/dirty_pages_temp_interval.go
+++ b/weed/filesys/dirty_pages_temp_interval.go
@@ -255,6 +255,9 @@ func newFileSectionReader(tempfile *os.File, offset int64, dataOffset int64, siz
func (f *FileSectionReader) Read(p []byte) (n int, err error) {
dataLen := min(f.dataStop-f.Offset, int64(len(p)))
+ if dataLen < 0 {
+ return 0, io.EOF
+ }
glog.V(4).Infof("reading %v [%d,%d)", f.file.Name(), f.Offset, f.Offset+dataLen)
n, err = f.file.ReadAt(p[:dataLen], f.Offset)
if n > 0 {