diff options
| author | Guang Jiong Lou <7991675+27149chen@users.noreply.github.com> | 2024-09-16 23:45:50 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-09-16 08:45:50 -0700 |
| commit | 367e7638d78e5f5bc373a6ae668cc2390308bba2 (patch) | |
| tree | 7ee3034af8646f1c4e74e48453f142318a052e50 /weed/mount | |
| parent | 0da9e40abb9628831f47656b4b62a9d72003e9bf (diff) | |
| download | seaweedfs-367e7638d78e5f5bc373a6ae668cc2390308bba2.tar.xz seaweedfs-367e7638d78e5f5bc373a6ae668cc2390308bba2.zip | |
fix invalid file read (#6024)
Diffstat (limited to 'weed/mount')
| -rw-r--r-- | weed/mount/filehandle_read.go | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/weed/mount/filehandle_read.go b/weed/mount/filehandle_read.go index 3c315b1c4..faf99952f 100644 --- a/weed/mount/filehandle_read.go +++ b/weed/mount/filehandle_read.go @@ -47,6 +47,9 @@ func (fh *FileHandle) readFromChunks(buff []byte, offset int64) (int64, int64, e if fileSize == 0 { glog.V(1).Infof("empty fh %v", fileFullPath) return 0, 0, io.EOF + } else if offset >= fileSize { + glog.V(1).Infof("invalid read, fileSize %d, offset %d for %s", fileSize, offset, fileFullPath) + return 0, 0, io.EOF } if offset < int64(len(entry.Content)) { @@ -66,7 +69,7 @@ func (fh *FileHandle) readFromChunks(buff []byte, offset int64) (int64, int64, e return int64(totalRead), ts, err } -func (fh *FileHandle) downloadRemoteEntry(entry *LockedEntry) (error) { +func (fh *FileHandle) downloadRemoteEntry(entry *LockedEntry) error { fileFullPath := fh.FullPath() dir, _ := fileFullPath.DirAndName() |
