From 1888b70cf4981cabaef0b6e33e0ae9982d3a788e Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Mon, 22 Jun 2026 09:21:06 +0300 Subject: fix task export timeout for lq0 --- internal/task/command_unix.go | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 internal/task/command_unix.go (limited to 'internal/task/command_unix.go') diff --git a/internal/task/command_unix.go b/internal/task/command_unix.go new file mode 100644 index 0000000..25e7fa3 --- /dev/null +++ b/internal/task/command_unix.go @@ -0,0 +1,26 @@ +//go:build unix + +package task + +import ( + "errors" + "os" + "os/exec" + "syscall" +) + +func configureCommandContext(cmd *exec.Cmd) { + cmd.SysProcAttr = &syscall.SysProcAttr{Setpgid: true} + cmd.Cancel = func() error { + if cmd.Process == nil { + return os.ErrProcessDone + } + if err := syscall.Kill(-cmd.Process.Pid, syscall.SIGKILL); err != nil { + if errors.Is(err, syscall.ESRCH) { + return os.ErrProcessDone + } + return err + } + return nil + } +} -- cgit v1.2.3