Call defer tty.Close() earlier

We could fail and return in tty.recvtty() and miss
tty.Close(), which might cause broken console output.

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
This commit is contained in:
Qiang Huang 2017-01-26 09:02:00 +08:00
parent c139a7c761
commit c9005dd1d5
1 changed files with 1 additions and 1 deletions

View File

@ -239,6 +239,7 @@ func (r *runner) run(config *specs.Process) (int, error) {
r.destroy()
return -1, err
}
defer tty.Close()
if err = startFn(process); err != nil {
r.destroy()
return -1, err
@ -250,7 +251,6 @@ func (r *runner) run(config *specs.Process) (int, error) {
return -1, err
}
}
defer tty.Close()
if config.Terminal && detach {
conn, err := net.Dial("unix", r.consoleSocket)