From 1fae6f4c2a4eda82654b1f52f790ee6bec7c584f Mon Sep 17 00:00:00 2001 From: Tonis Tiigi Date: Tue, 11 Nov 2025 11:27:46 -0800 Subject: [PATCH] build: avoid panic on linking to nil target Note that nil targets still do not work as buildkit does not currently support build inputs with nil values. But this gives cleaner error from buildkit instead of panic on the client side. Signed-off-by: Tonis Tiigi --- build/build.go | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/build/build.go b/build/build.go index ab430a028..0beb696c9 100644 --- a/build/build.go +++ b/build/build.go @@ -1074,9 +1074,12 @@ func waitContextDeps(ctx context.Context, index int, results *waitmap.Map, so *c for _, v := range contexts { if len(rr.Refs) > 0 { for platform, r := range rr.Refs { - st, err := r.ToState() - if err != nil { - return err + st := llb.Scratch() + if r != nil { + st, err = r.ToState() + if err != nil { + return err + } } so.FrontendInputs[k+"::"+platform] = st so.FrontendAttrs[v+"::"+platform] = "input:" + k + "::" + platform