diff --git a/fuse/readonly/readonly_unix.go b/fuse/readonly/readonly_unix.go index c743b75a2..6459a7e41 100644 --- a/fuse/readonly/readonly_unix.go +++ b/fuse/readonly/readonly_unix.go @@ -181,8 +181,11 @@ func (s *Node) Read(req *fuse.ReadRequest, resp *fuse.ReadResponse, intr fs.Intr if err != nil { return err } - n, err := io.ReadFull(r, resp.Data[:req.Size]) + n, err := r.Read(resp.Data[:req.Size]) + if err != nil && err != io.EOF { + return err + } resp.Data = resp.Data[:n] lm["res_size"] = n - return err // may be non-nil / not succeeded + return nil // may be non-nil / not succeeded }