1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00

Windows: Fixed escaping of command line arguments

This fixes some tests that were failing on windows

Signed-off-by: Darren Stahl <darst@microsoft.com>
This commit is contained in:
Darren Stahl 2015-09-23 15:12:23 -07:00
parent a1573dffee
commit ca5cc770b9
2 changed files with 5 additions and 7 deletions

View file

@ -12,6 +12,7 @@ import (
"path/filepath"
"strconv"
"strings"
"syscall"
"github.com/Sirupsen/logrus"
"github.com/docker/docker/daemon/execdriver"
@ -258,7 +259,7 @@ func (d *Driver) Run(c *execdriver.Command, pipes *execdriver.Pipes, hooks execd
createProcessParms.CommandLine = c.ProcessConfig.Entrypoint
for _, arg := range c.ProcessConfig.Arguments {
logrus.Debugln("appending ", arg)
createProcessParms.CommandLine += " " + arg
createProcessParms.CommandLine += " " + syscall.EscapeArg(arg)
}
logrus.Debugf("CommandLine: %s", createProcessParms.CommandLine)

View file

@ -450,12 +450,9 @@ func (s *DockerSuite) TestRunExitCode(c *check.C) {
exit int
err error
)
if daemonPlatform == "windows" {
// FIXME Windows: Work out the bug in busybox why exit doesn't set the exit code.
_, exit, err = dockerCmdWithError("run", WindowsBaseImage, "cmd", "/s", "/c", "exit 72")
} else {
_, exit, err = dockerCmdWithError("run", "busybox", "/bin/sh", "-c", "exit 72")
}
_, exit, err = dockerCmdWithError("run", "busybox", "/bin/sh", "-c", "exit 72")
if err == nil {
c.Fatal("should not have a non nil error")
}