Prechádzať zdrojové kódy

Merge pull request #2788 from jpoimboe/resize-after-start

resize pty after starting
Guillaume J. Charmes 11 rokov pred
rodič
commit
04f1d4dcdb
1 zmenil súbory, kde vykonal 9 pridanie a 6 odobranie
  1. 9 6
      commands.go

+ 9 - 6
commands.go

@@ -575,6 +575,7 @@ func (cli *DockerCli) CmdStart(args ...string) error {
 	}
 	}
 
 
 	var cErr chan error
 	var cErr chan error
+	var tty bool
 	if *attach || *openStdin {
 	if *attach || *openStdin {
 		if cmd.NArg() > 1 {
 		if cmd.NArg() > 1 {
 			return fmt.Errorf("Impossible to start and attach multiple containers at once.")
 			return fmt.Errorf("Impossible to start and attach multiple containers at once.")
@@ -591,17 +592,13 @@ func (cli *DockerCli) CmdStart(args ...string) error {
 			return err
 			return err
 		}
 		}
 
 
+		tty = container.Config.Tty
+
 		if !container.Config.Tty {
 		if !container.Config.Tty {
 			sigc := cli.forwardAllSignals(cmd.Arg(0))
 			sigc := cli.forwardAllSignals(cmd.Arg(0))
 			defer utils.StopCatch(sigc)
 			defer utils.StopCatch(sigc)
 		}
 		}
 
 
-		if container.Config.Tty && cli.isTerminal {
-			if err := cli.monitorTtySize(cmd.Arg(0)); err != nil {
-				return err
-			}
-		}
-
 		var in io.ReadCloser
 		var in io.ReadCloser
 
 
 		v := url.Values{}
 		v := url.Values{}
@@ -639,7 +636,13 @@ func (cli *DockerCli) CmdStart(args ...string) error {
 		}
 		}
 		return encounteredError
 		return encounteredError
 	}
 	}
+
 	if *openStdin || *attach {
 	if *openStdin || *attach {
+		if tty && cli.isTerminal {
+			if err := cli.monitorTtySize(cmd.Arg(0)); err != nil {
+				utils.Errorf("Error monitoring TTY size: %s\n", err)
+			}
+		}
 		return <-cErr
 		return <-cErr
 	}
 	}
 	return nil
 	return nil