aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorchrislu <chris.lu@gmail.com>2022-03-04 22:36:01 -0800
committerchrislu <chris.lu@gmail.com>2022-03-04 22:36:01 -0800
commitda76af187fbe86da0edd2e1bd5c25d9d4a45738c (patch)
treea56d5ae57369fa2c018057c1fea98a6bbd43700c
parent6e49e75a5b70389d16026b52ba5001d09cea2c7f (diff)
downloadseaweedfs-da76af187fbe86da0edd2e1bd5c25d9d4a45738c.tar.xz
seaweedfs-da76af187fbe86da0edd2e1bd5c25d9d4a45738c.zip
mount: avoid possible index out of bounds error
-rw-r--r--weed/filer/reader_cache.go6
1 files changed, 5 insertions, 1 deletions
diff --git a/weed/filer/reader_cache.go b/weed/filer/reader_cache.go
index 4f2c52303..bce97cc49 100644
--- a/weed/filer/reader_cache.go
+++ b/weed/filer/reader_cache.go
@@ -183,6 +183,10 @@ func (s *SingleChunkCacher) readChunkAt(buf []byte, offset int64) (int, error) {
s.RLock()
defer s.RUnlock()
- return copy(buf, s.data[offset:]), s.err
+ if s.err != nil {
+ return 0, s.err
+ }
+
+ return copy(buf, s.data[offset:]), nil
}