mirror of
https://github.com/lukaszraczylo/claude-mnemonic.git
synced 2026-10-12 04:55:18 +00:00
fix: use build tags for Setpgid (Unix-only) to fix Windows build
This commit is contained in:
@@ -0,0 +1,12 @@
|
|||||||
|
//go:build !windows
|
||||||
|
|
||||||
|
package hooks
|
||||||
|
|
||||||
|
import (
|
||||||
|
"os/exec"
|
||||||
|
"syscall"
|
||||||
|
)
|
||||||
|
|
||||||
|
func setSysProcAttr(cmd *exec.Cmd) {
|
||||||
|
cmd.SysProcAttr = &syscall.SysProcAttr{Setpgid: true}
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
//go:build windows
|
||||||
|
|
||||||
|
package hooks
|
||||||
|
|
||||||
|
import "os/exec"
|
||||||
|
|
||||||
|
func setSysProcAttr(cmd *exec.Cmd) {
|
||||||
|
// Windows has no Setpgid; process groups work differently.
|
||||||
|
}
|
||||||
+1
-1
@@ -334,7 +334,7 @@ func ensureWorkerRunningCtx(ctx context.Context) (int, error) {
|
|||||||
// Start worker -- detach from hook's process group so Claude Code
|
// Start worker -- detach from hook's process group so Claude Code
|
||||||
// killing the hook doesn't take the worker down with it.
|
// killing the hook doesn't take the worker down with it.
|
||||||
cmd := exec.Command(workerPath) // #nosec G204 -- workerPath is from internal findWorkerBinary
|
cmd := exec.Command(workerPath) // #nosec G204 -- workerPath is from internal findWorkerBinary
|
||||||
cmd.SysProcAttr = &syscall.SysProcAttr{Setpgid: true}
|
setSysProcAttr(cmd)
|
||||||
cmd.Stdout = os.Stderr
|
cmd.Stdout = os.Stderr
|
||||||
cmd.Stderr = os.Stderr
|
cmd.Stderr = os.Stderr
|
||||||
if err := cmd.Start(); err != nil {
|
if err := cmd.Start(); err != nil {
|
||||||
|
|||||||
Reference in New Issue
Block a user