Skip to content

Commit 19c2213

Browse files
committed
build: make sure defers always run in the end of the build
Signed-off-by: Tonis Tiigi <[email protected]>
1 parent 1365652 commit 19c2213

File tree

1 file changed

+1
-10
lines changed

1 file changed

+1
-10
lines changed

build/build.go

+1-10
Original file line numberDiff line numberDiff line change
@@ -205,15 +205,6 @@ func BuildWithResultHandler(ctx context.Context, nodes []builder.Node, opts map[
205205
return nil, err
206206
}
207207

208-
defers := make([]func(), 0, 2)
209-
defer func() {
210-
if err != nil {
211-
for _, f := range defers {
212-
f()
213-
}
214-
}
215-
}()
216-
217208
reqForNodes := make(map[string][]*reqForNode)
218209
eg, ctx := errgroup.WithContext(ctx)
219210

@@ -243,11 +234,11 @@ func BuildWithResultHandler(ctx context.Context, nodes []builder.Node, opts map[
243234
if err != nil {
244235
return nil, err
245236
}
237+
defer release()
246238
if err := saveLocalState(so, k, opt, np.Node(), cfg); err != nil {
247239
return nil, err
248240
}
249241
addGitAttrs(so)
250-
defers = append(defers, release)
251242
reqn = append(reqn, &reqForNode{
252243
resolvedNode: np,
253244
so: so,

0 commit comments

Comments
 (0)