aboutsummaryrefslogtreecommitdiffhomepage
path: root/helper/proc
diff options
context:
space:
mode:
Diffstat (limited to 'helper/proc')
-rw-r--r--helper/proc/files.go9
1 files changed, 6 insertions, 3 deletions
diff --git a/helper/proc/files.go b/helper/proc/files.go
index 24cc7225..e41c3ef1 100644
--- a/helper/proc/files.go
+++ b/helper/proc/files.go
@@ -60,7 +60,10 @@ func (f *ExtraFilesPre) copy(e []*os.File) []*os.File {
}
// Fulfill calls the [File.Fulfill] method on all files, starts cmd and blocks until all fulfillment completes.
-func Fulfill(ctx context.Context, cmd *exec.Cmd, files []File, extraFiles *ExtraFilesPre) (err error) {
+func Fulfill(ctx context.Context,
+ v *[]*os.File, start func() error,
+ files []File, extraFiles *ExtraFilesPre,
+) (err error) {
var ecs int
for _, o := range files {
ecs += o.ErrCount()
@@ -77,8 +80,8 @@ func Fulfill(ctx context.Context, cmd *exec.Cmd, files []File, extraFiles *Extra
}
}
- cmd.ExtraFiles = extraFiles.Files()
- if err = cmd.Start(); err != nil {
+ *v = extraFiles.Files()
+ if err = start(); err != nil {
return
}