1
0
mirror of https://github.com/docker/cli.git synced 2026-01-25 03:42:05 +03:00

Exit if there is any error reading from stdin.

Upstream-commit: 4089a20cf476d2241b051d9ba913b7adde90661d
Component: engine
This commit is contained in:
David Calavera
2013-08-03 17:27:15 -07:00
parent 7656c6dc55
commit 486c942e2b
2 changed files with 8 additions and 7 deletions

View File

@@ -272,13 +272,14 @@ func (cli *DockerCli) CmdLogin(args ...string) error {
}
}
readInput := func(in io.Reader) (string, error) {
readInput := func(in io.Reader, out io.Writer) string {
reader := bufio.NewReader(in)
line, err := reader.ReadString('\n')
if err != nil {
return "", err
fmt.Fprintln(out, err.Error())
os.Exit(1)
}
return line, nil
return line
}
authconfig, ok := cli.configFile.Configs[auth.IndexServerAddress()]
@@ -288,7 +289,7 @@ func (cli *DockerCli) CmdLogin(args ...string) error {
if username == "" {
promptDefault("Username", authconfig.Username)
username, _ = readInput(cli.in)
username = readInput(cli.in, cli.out)
if username == "" {
username = authconfig.Username
}
@@ -300,7 +301,7 @@ func (cli *DockerCli) CmdLogin(args ...string) error {
fmt.Fprintf(cli.out, "Password: ")
term.DisableEcho(cli.terminalFd, cli.out, oldState)
password, _ = readInput(cli.in)
password = readInput(cli.in, cli.out)
term.RestoreTerminal(cli.terminalFd, oldState)
@@ -311,7 +312,7 @@ func (cli *DockerCli) CmdLogin(args ...string) error {
if email == "" {
promptDefault("\nEmail", authconfig.Email)
email, _ = readInput(cli.in)
email = readInput(cli.in, cli.out)
if email == "" {
email = authconfig.Email
}

View File

@@ -71,7 +71,7 @@ func HandleInterrupt(fd uintptr, out io.Writer, state *State) {
go func() {
_ = <-sigchan
fmt.Fprintf(out, "\n")
fmt.Fprint(out, "\n")
RestoreTerminal(fd, state)
os.Exit(0)
}()