Skip to content

Commit b9139af

Browse files
authored
Merge pull request #208 from articulate/fix/shell-entrypoint
fix: allow starting shell
2 parents 4978d3f + 8d0e69a commit b9139af

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

Diff for: main.go

+4-1
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,9 @@ func run(ctx context.Context, name string, args, env []string, l *slog.Logger) i
151151
cmd.Stdin = os.Stdin
152152
cmd.Stderr = os.Stderr
153153
cmd.Stdout = os.Stdout
154-
cmd.SysProcAttr = &syscall.SysProcAttr{Setpgid: true}
154+
if name != "bash" && name != "sh" && name != "zsh" && name != "fish" {
155+
cmd.SysProcAttr = &syscall.SysProcAttr{Setpgid: true}
156+
}
155157

156158
if err := cmd.Start(); err != nil {
157159
l.ErrorContext(ctx, "Could not start command", "error", err, "cmd", cmd.String())
@@ -163,6 +165,7 @@ func run(ctx context.Context, name string, args, env []string, l *slog.Logger) i
163165
signal.Notify(sigch, signals...)
164166
signal.Notify(exitch, syscall.SIGINT)
165167
defer signal.Stop(sigch)
168+
defer signal.Stop(exitch)
166169

167170
// forward signals to the child process
168171
go func() {

0 commit comments

Comments
 (0)