Skip to content

panic when using wrong detach keys #380

@vieux

Description

@vieux

docker run --cpus 0.5 --name test -itd busybox sh -c "ping google.com"

docker attach --detach-keys="ctrl-A,a" test

the attach works on 17.06 but panics on 17.07

                                                                                  panic: runtime error: invalid memory address or nil pointer dereference
                                                                                                                                                         [signal SIGSEGV: segmentation violation code=0x1 addr=0x28 pc=0x4139376]

                                                     goroutine 12 [running]:
                                                                            bufio.(*Reader).writeBuf(0x0, 0x4fad960, 0xc42037ccc0, 0xc42002fe48, 0x400f69d, 0x49c3b40)
                                                                                                                                                                      	/usr/local/go/src/bufio/bufio.go:504 +0x26
                                      bufio.(*Reader).WriteTo(0x0, 0x4fad960, 0xc42037ccc0, 0x5540198, 0x0, 0x1)
                                                                                                                	/usr/local/go/src/bufio/bufio.go:462 +0x43
                                                                                                                                                                  io.copyBuffer(0x4fad960, 0xc42037ccc0, 0x4fad260, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
                                                                          	/usr/local/go/src/io/io.go:380 +0x31a
                                                                                                                     io.Copy(0x4fad960, 0xc42037ccc0, 0x4fad260, 0x0, 0x0, 0x0, 0x0)
        	/usr/local/go/src/io/io.go:360 +0x68
                                                    github.com/docker/cli/cli/command/container.(*hijackedIOStreamer).beginOutputStream.func1(0xc420405e30, 0xc42045ac20, 0xc42041af60)
           	/go/src/github.com/docker/cli/cli/command/container/hijack.go:123 +0x200
                                                                                        created by github.com/docker/cli/cli/command/container.(*hijackedIOStreamer).beginOutputStream
          	/go/src/github.com/docker/cli/cli/command/container/hijack.go:139 +0x83

(sorry for the broken output)

@tiborvass is currently investigating

/cc @jlhawn

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions