mirror of
https://github.com/Llewellynvdm/fzf.git
synced 2024-12-23 11:29:01 +00:00
Revert "Close handles to /dev/tty", instead reuse handles
This commit is contained in:
parent
218843b9f1
commit
c4cc7891b4
@ -14,7 +14,11 @@ import (
|
|||||||
"golang.org/x/term"
|
"golang.org/x/term"
|
||||||
)
|
)
|
||||||
|
|
||||||
var tty string
|
var (
|
||||||
|
tty string
|
||||||
|
ttyin *os.File
|
||||||
|
ttyout *os.File
|
||||||
|
)
|
||||||
|
|
||||||
func IsLightRendererSupported() bool {
|
func IsLightRendererSupported() bool {
|
||||||
return true
|
return true
|
||||||
@ -47,8 +51,7 @@ func (r *LightRenderer) initPlatform() error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (r *LightRenderer) closePlatform() {
|
func (r *LightRenderer) closePlatform() {
|
||||||
r.ttyin.Close()
|
// NOOP
|
||||||
r.ttyout.Close()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func openTty(mode int) (*os.File, error) {
|
func openTty(mode int) (*os.File, error) {
|
||||||
@ -68,11 +71,25 @@ func openTty(mode int) (*os.File, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func openTtyIn() (*os.File, error) {
|
func openTtyIn() (*os.File, error) {
|
||||||
return openTty(syscall.O_RDONLY)
|
if ttyin != nil {
|
||||||
|
return ttyin, nil
|
||||||
|
}
|
||||||
|
in, err := openTty(syscall.O_RDONLY)
|
||||||
|
if err == nil {
|
||||||
|
ttyin = in
|
||||||
|
}
|
||||||
|
return in, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func openTtyOut() (*os.File, error) {
|
func openTtyOut() (*os.File, error) {
|
||||||
return openTty(syscall.O_WRONLY)
|
if ttyout != nil {
|
||||||
|
return ttyout, nil
|
||||||
|
}
|
||||||
|
out, err := openTty(syscall.O_WRONLY)
|
||||||
|
if err == nil {
|
||||||
|
ttyout = out
|
||||||
|
}
|
||||||
|
return out, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *LightRenderer) setupTerminal() {
|
func (r *LightRenderer) setupTerminal() {
|
||||||
|
Loading…
Reference in New Issue
Block a user