lazygit/pkg/commands/oscommands/cmd_obj_runner_default.go
Stefan Haller 8cf617b683 Rename getCmdHandler to getCmdHandlerPty, and add getCmdHandlerNonPty
getCmdHandlerNonPty is defined for all platforms.
2025-05-01 15:21:37 +02:00

25 lines
515 B
Go

//go:build !windows
// +build !windows
package oscommands
import (
"os/exec"
"github.com/creack/pty"
)
// we define this separately for windows and non-windows given that windows does
// not have great PTY support and we need a PTY to handle a credential request
func (self *cmdObjRunner) getCmdHandlerPty(cmd *exec.Cmd) (*cmdHandler, error) {
ptmx, err := pty.Start(cmd)
if err != nil {
return nil, err
}
return &cmdHandler{
stdoutPipe: ptmx,
stdinPipe: ptmx,
close: ptmx.Close,
}, nil
}