From d6aa162f30d63f21f5f4db75e302dbb90595bbe2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=90=E5=BF=97=E4=BC=9F?= Date: Tue, 6 Apr 2021 04:56:32 +0000 Subject: [PATCH] embed, testing/fstest: small optimization for ReadDir Change-Id: If8dc6d917b55119b5662ce5b0b87328d220d684d GitHub-Last-Rev: cc9a1d5a7e2599ee7f98c61d35b2450b9b6a92c3 GitHub-Pull-Request: golang/go#45388 Reviewed-on: https://go-review.googlesource.com/c/go/+/307250 Run-TryBot: Ian Lance Taylor TryBot-Result: Go Bot Reviewed-by: Ian Lance Taylor Trust: Tobias Klauser --- src/embed/embed.go | 6 +++--- src/testing/fstest/mapfs.go | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/embed/embed.go b/src/embed/embed.go index 7f2719d2a7..851cc216fc 100644 --- a/src/embed/embed.go +++ b/src/embed/embed.go @@ -386,15 +386,15 @@ func (d *openDir) Read([]byte) (int, error) { func (d *openDir) ReadDir(count int) ([]fs.DirEntry, error) { n := len(d.files) - d.offset - if count > 0 && n > count { - n = count - } if n == 0 { if count <= 0 { return nil, nil } return nil, io.EOF } + if count > 0 && n > count { + n = count + } list := make([]fs.DirEntry, n) for i := range list { list[i] = &d.files[d.offset+i] diff --git a/src/testing/fstest/mapfs.go b/src/testing/fstest/mapfs.go index a5d4a23fac..9fef2f4696 100644 --- a/src/testing/fstest/mapfs.go +++ b/src/testing/fstest/mapfs.go @@ -223,12 +223,12 @@ func (d *mapDir) Read(b []byte) (int, error) { func (d *mapDir) ReadDir(count int) ([]fs.DirEntry, error) { n := len(d.entry) - d.offset - if count > 0 && n > count { - n = count - } if n == 0 && count > 0 { return nil, io.EOF } + if count > 0 && n > count { + n = count + } list := make([]fs.DirEntry, n) for i := range list { list[i] = &d.entry[d.offset+i]