From 2f3c0ee4e28b89457c141e703795ca04aeaec8a0 Mon Sep 17 00:00:00 2001 From: Alexandre Date: Sat, 6 Jan 2024 21:05:26 +0100 Subject: [PATCH] Return early if walk target is dir --- main.go | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/main.go b/main.go index b386ca2..b9176c3 100644 --- a/main.go +++ b/main.go @@ -73,15 +73,12 @@ func main() { err = filepath.Walk(path, func(innerPath string, info fs.FileInfo, err error) error { githubactions.Infof("Reading %v", innerPath) + if err != nil { return err } relativeParh := strings.TrimPrefix(innerPath, path) - w, err := mwriter.CreateFormFile("file", relativeParh) - if err != nil { - return err - } in, err := os.Open(innerPath) if err != nil { @@ -89,8 +86,22 @@ func main() { } defer in.Close() + pathInfo, err := in.Stat() + if err != nil { + return err + } + + if pathInfo.IsDir() { + return nil + } + + w, err := mwriter.CreateFormFile("file", relativeParh) + if err != nil { + return err + } + if written, err := io.Copy(w, in); err != nil { - return fmt.Errorf("error copying %s (%d bytes written): %v", path, written, err) + return fmt.Errorf("error copying %s (%d bytes written): %v", relativeParh, written, err) } if err := mwriter.Close(); err != nil {