diff options
| author | Chris Lu <chris.lu@gmail.com> | 2020-08-16 00:49:08 -0700 |
|---|---|---|
| committer | Chris Lu <chris.lu@gmail.com> | 2020-08-16 00:49:08 -0700 |
| commit | aec7f32b02c04aee315f67922cdb3813dbe7af72 (patch) | |
| tree | 875d22d3b730efa409ad9e8a41331c155b10b099 /weed/server | |
| parent | 5d80fc2ec7b07aa6281eb7990f40552baed0df94 (diff) | |
| download | seaweedfs-aec7f32b02c04aee315f67922cdb3813dbe7af72.tar.xz seaweedfs-aec7f32b02c04aee315f67922cdb3813dbe7af72.zip | |
fix reader_at
Diffstat (limited to 'weed/server')
| -rw-r--r-- | weed/server/webdav_server.go | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/weed/server/webdav_server.go b/weed/server/webdav_server.go index e9f7b23fd..277e261f0 100644 --- a/weed/server/webdav_server.go +++ b/weed/server/webdav_server.go @@ -470,7 +470,8 @@ func (f *WebDavFile) Read(p []byte) (readSize int, err error) { if err != nil { return 0, err } - if len(f.entry.Chunks) == 0 { + fileSize := int64(filer2.FileSize(f.entry)) + if fileSize == 0 { return 0, io.EOF } if f.entryViewCache == nil { @@ -479,7 +480,7 @@ func (f *WebDavFile) Read(p []byte) (readSize int, err error) { } if f.reader == nil { chunkViews := filer2.ViewFromVisibleIntervals(f.entryViewCache, 0, math.MaxInt32) - f.reader = filer2.NewChunkReaderAtFromClient(f.fs, chunkViews, f.fs.chunkCache) + f.reader = filer2.NewChunkReaderAtFromClient(f.fs, chunkViews, f.fs.chunkCache, fileSize) } readSize, err = f.reader.ReadAt(p, f.off) |
