From ed0ddd98e91e75e41826327e7ffb1fddf8fc805e Mon Sep 17 00:00:00 2001 From: Sebastiaan van Stijn Date: Wed, 22 Jul 2026 16:51:21 +0200 Subject: [PATCH] testBreakout: pre-create implied victim directory in breakout test Pre-create the in-tree "victim" directory used by the leading-slash breakout case so the test remains focused on breakout detection rather than implied directory ownership. Signed-off-by: Sebastiaan van Stijn --- utils_test.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/utils_test.go b/utils_test.go index 0ba097e..e6edd1f 100644 --- a/utils_test.go +++ b/utils_test.go @@ -52,6 +52,12 @@ func testBreakout(untarFn string, tmpdir string, headers []*tar.Header) error { if err := os.Mkdir(victim, 0o755); err != nil { return err } + // Avoid unrelated ownership failures when the cleaned path remains inside + // dest and requires an implied "victim" directory. + // See https://github.com/moby/go-archive/pull/69#issuecomment-5046037628 + if err := os.Mkdir(filepath.Join(dest, "victim"), 0o755); err != nil { + return err + } hello := filepath.Join(victim, "hello") helloData, err := time.Now().MarshalText() if err != nil {