From 1557c58eef9a029d2cb9fa113e457042a8bc1d3c Mon Sep 17 00:00:00 2001 From: greatroar <@> Date: Mon, 2 Mar 2020 21:33:39 +0100 Subject: [PATCH] Fix and simplify fs.Reader fakeDir.{Readdir,Readdirnames} weren't handling the case n == 0 correctly. fakeFileInfo.sys is always nil, so omit the field. --- internal/fs/fs_reader.go | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/internal/fs/fs_reader.go b/internal/fs/fs_reader.go index d991951aa..73aca3230 100644 --- a/internal/fs/fs_reader.go +++ b/internal/fs/fs_reader.go @@ -275,7 +275,7 @@ type fakeDir struct { } func (d fakeDir) Readdirnames(n int) ([]string, error) { - if n >= 0 { + if n > 0 { return nil, errors.New("not implemented") } names := make([]string, 0, len(d.entries)) @@ -287,7 +287,7 @@ func (d fakeDir) Readdirnames(n int) ([]string, error) { } func (d fakeDir) Readdir(n int) ([]os.FileInfo, error) { - if n >= 0 { + if n > 0 { return nil, errors.New("not implemented") } return d.entries, nil @@ -299,7 +299,6 @@ type fakeFileInfo struct { size int64 mode os.FileMode modtime time.Time - sys interface{} } func (fi fakeFileInfo) Name() string { @@ -323,5 +322,5 @@ func (fi fakeFileInfo) IsDir() bool { } func (fi fakeFileInfo) Sys() interface{} { - return fi.sys + return nil }