diff --git a/internal/rosa/state.go b/internal/rosa/state.go index a14f4a5d..cd010d5c 100644 --- a/internal/rosa/state.go +++ b/internal/rosa/state.go @@ -1041,12 +1041,6 @@ func (ctx *evalContext) pf( } meta.ID = int(anitya) - if output != nil { - v = cachedArtifact{&meta, output} - set = true - return - } - for _, pathname := range patches { var p []byte p, err = fs.ReadFile(ctx.b, pathname) @@ -1059,6 +1053,19 @@ func (ctx *evalContext) pf( }) } + if output != nil { + if len(attr.Patches) != 0 || attr.Chmod { + rn := string(name) + if meta.Version != Unversioned { + rn = string(name) + "-" + meta.Version + } + output = ctx.t.NewPatchedSource(rn, output, !attr.Chmod, attr.Patches...) + } + v = cachedArtifact{&meta, output} + set = true + return + } + if overlay == "" { for _, h := range extraH { _, a := ctx.t.MustLoad(h)