From 85001cbec7898b9264b0c3b025ae2aa71d617fd8 Mon Sep 17 00:00:00 2001 From: Chris Lu Date: Tue, 18 Aug 2020 08:18:54 -0700 Subject: [PATCH] properly report io.EOF --- weed/filer2/reader_at.go | 2 +- weed/filer2/reader_at_test.go | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/weed/filer2/reader_at.go b/weed/filer2/reader_at.go index 2894f4a4b..19821771f 100644 --- a/weed/filer2/reader_at.go +++ b/weed/filer2/reader_at.go @@ -114,7 +114,7 @@ func (c *ChunkReadAt) doReadAt(p []byte, offset int64) (n int, err error) { n += delta } - if offset+int64(n) >= c.fileSize { + if err == nil && offset+int64(len(p)) > c.fileSize { err = io.EOF } // fmt.Printf("~~~ filled %d, err: %v\n\n", n, err) diff --git a/weed/filer2/reader_at_test.go b/weed/filer2/reader_at_test.go index f93d7ea11..7377c5dbc 100644 --- a/weed/filer2/reader_at_test.go +++ b/weed/filer2/reader_at_test.go @@ -66,9 +66,9 @@ func TestReaderAt(t *testing.T) { chunkCache: &mockChunkCache{}, } - testReadAt(t, readerAt, 0, 10, 10, io.EOF) + testReadAt(t, readerAt, 0, 10, 10, nil) testReadAt(t, readerAt, 0, 12, 10, io.EOF) - testReadAt(t, readerAt, 2, 8, 8, io.EOF) + testReadAt(t, readerAt, 2, 8, 8, nil) testReadAt(t, readerAt, 3, 6, 6, nil) } @@ -116,7 +116,7 @@ func TestReaderAt0(t *testing.T) { chunkCache: &mockChunkCache{}, } - testReadAt(t, readerAt, 0, 10, 10, io.EOF) + testReadAt(t, readerAt, 0, 10, 10, nil) testReadAt(t, readerAt, 3, 16, 7, io.EOF) testReadAt(t, readerAt, 3, 5, 5, nil) @@ -144,7 +144,7 @@ func TestReaderAt1(t *testing.T) { chunkCache: &mockChunkCache{}, } - testReadAt(t, readerAt, 0, 20, 20, io.EOF) + testReadAt(t, readerAt, 0, 20, 20, nil) testReadAt(t, readerAt, 1, 7, 7, nil) testReadAt(t, readerAt, 0, 1, 1, nil) testReadAt(t, readerAt, 18, 4, 2, io.EOF)