From 542c84c2d264bd427c51979d4afd235245f8177a Mon Sep 17 00:00:00 2001 From: Alexander Morozov Date: Mon, 30 Mar 2015 13:29:33 -0700 Subject: [PATCH] Do not mask *exec.ExitError Fix #11764 Signed-off-by: Alexander Morozov (cherry picked from commit f468bbb7e8c89204bd5d8f346ecec4606b9f3b31) Docker-DCO-1.1-Signed-off-by: Jessie Frazelle (github: jfrazelle) Docker-DCO-1.1-Signed-off-by: Jessie Frazelle (github: jfrazelle) --- daemon/execdriver/native/driver.go | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/daemon/execdriver/native/driver.go b/daemon/execdriver/native/driver.go index 46097a8cc..3744161a4 100644 --- a/daemon/execdriver/native/driver.go +++ b/daemon/execdriver/native/driver.go @@ -169,11 +169,11 @@ func (d *driver) Run(c *execdriver.Command, pipes *execdriver.Pipes, startCallba } ps, err := waitF() if err != nil { - if err, ok := err.(*exec.ExitError); !ok { + execErr, ok := err.(*exec.ExitError) + if !ok { return execdriver.ExitStatus{ExitCode: -1}, err - } else { - ps = err.ProcessState } + ps = execErr.ProcessState } cont.Destroy() @@ -192,13 +192,12 @@ func waitInPIDHost(p *libcontainer.Process, c libcontainer.Container) func() (*o process, err := os.FindProcess(pid) s, err := process.Wait() if err != nil { - if err, ok := err.(*exec.ExitError); !ok { + execErr, ok := err.(*exec.ExitError) + if !ok { return s, err - } else { - s = err.ProcessState } + s = execErr.ProcessState } - processes, err := c.Processes() if err != nil { return s, err }