From 568a0f59547b00931d96f394f5c7a9a5af91f387 Mon Sep 17 00:00:00 2001 From: Gaspare Iengo Date: Fri, 16 Oct 2020 10:07:20 +0000 Subject: [PATCH] Improving condition To take into account partial read at end of file --- weed/server/webdav_server.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/weed/server/webdav_server.go b/weed/server/webdav_server.go index 8e8b94227..53adfb171 100644 --- a/weed/server/webdav_server.go +++ b/weed/server/webdav_server.go @@ -484,10 +484,10 @@ func (f *WebDavFile) Read(p []byte) (readSize int, err error) { f.reader = filer.NewChunkReaderAtFromClient(f.fs, chunkViews, f.fs.chunkCache, fileSize) } - if f.off+int64(len(p)) > fileSize { + if f.off >= fileSize { readSize = int(len(p)) err = io.EOF - glog.V(2).Infof("WebDavFileSystem.Read %v: faked readSize: %d", f.name, readSize) + glog.V(2).Infof("WebDavFileSystem.Read %v: %d offset of filesize %d, faked readSize: %d", f.name, f.off, fileSize, readSize) } else { readSize, err = f.reader.ReadAt(p, f.off) glog.V(3).Infof("WebDavFileSystem.Read %v: [%d,%d)", f.name, f.off, f.off+int64(readSize))