From 7a71964303d134186d4885639dbf60b05f98a759 Mon Sep 17 00:00:00 2001 From: Vishnu Kothakapu Date: Mon, 17 Aug 2026 17:01:17 +0530 Subject: [PATCH] Performance: Upgrade filepath.Walk to filepath.WalkDir filepath.Walk makes an expensive os.Stat system call on every file. filepath.WalkDir uses os.ReadDir under the hood to bypass this overhead, making directory scanning much faster. Fixes: #29562 Signed-off-by: Vishnu Kothakapu --- pkg/api/handlers/libpod/quadlets.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkg/api/handlers/libpod/quadlets.go b/pkg/api/handlers/libpod/quadlets.go index 0036d43a3e..2049e341fa 100644 --- a/pkg/api/handlers/libpod/quadlets.go +++ b/pkg/api/handlers/libpod/quadlets.go @@ -6,6 +6,7 @@ import ( "errors" "fmt" "io" + "io/fs" "net/http" "os" "path/filepath" @@ -100,11 +101,11 @@ func extractQuadletFiles(tempDir string, r io.ReadCloser) ([]string, error) { // Collect all files from the extracted directory var filePaths []string - err = filepath.Walk(quadletDir, func(path string, info os.FileInfo, err error) error { + err = filepath.WalkDir(quadletDir, func(path string, d fs.DirEntry, err error) error { if err != nil { return err } - if !info.IsDir() { + if !d.IsDir() { filePaths = append(filePaths, path) } return nil