Skip to content

Commit e2ae2ab

Browse files
committed
fix: use defer
1 parent df96994 commit e2ae2ab

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

dsl/execute.go

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ func doExpandMacro(expr types.Expr) (types.Value, error) {
8787
return val, err
8888
}
8989

90-
func writeTrxLog(ctx context.Context, expr types.Expr) error {
90+
func writeTrxLog(ctx context.Context, expr types.Expr) (result error) {
9191
deparsed, err := Deparse(expr)
9292
if err != nil {
9393
return errors.Wrap(err, "failed to deparse expression")
@@ -112,13 +112,14 @@ func writeTrxLog(ctx context.Context, expr types.Expr) error {
112112
if err != nil {
113113
return errors.Wrapf(err, "could not create %s", filename)
114114
}
115+
defer func() {
116+
if err := logFile.Close(); err != nil {
117+
result = errors.Wrapf(err, "failed to close transaction log %s", filename)
118+
}
119+
}()
115120
_, err = io.Copy(logFile, bytes.NewReader(content))
116121
if err != nil {
117122
return errors.Wrapf(err, "failed to write transaction log %s", filename)
118123
}
119-
err = logFile.Close()
120-
if err != nil {
121-
return errors.Wrapf(err, "failed to close transaction log %s", filename)
122-
}
123124
return nil
124125
}

0 commit comments

Comments
 (0)