Due to the CL https://go-review.googlesource.com/c/39608/ in
x/sys/windows which changed the definitions of STD_INPUT_HANDLE,
STD_OUTPUT_HANDLE and STD_ERROR_HANDLE, we get the following failure
after re-vendoring x/sys/windows:
07:47:01 # github.com/docker/docker/pkg/term
07:47:01 pkg/term/term_windows.go:82: constant 4294967286 overflows int
07:47:01 pkg/term/term_windows.go:88: constant 4294967285 overflows int
07:47:01 pkg/term/term_windows.go:94: constant 4294967284 overflows int
07:47:12 Build step 'Execute shell' marked build as failure
Temporarily switch back pkg/term to use these constants from the syscall
package and add a comment about it.
To really fix this, go-ansiterm should probably be switched to use
x/sys/windows.
Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
| ... | ... |
@@ -6,10 +6,10 @@ import ( |
| 6 | 6 |
"io" |
| 7 | 7 |
"os" |
| 8 | 8 |
"os/signal" |
| 9 |
+ "syscall" // used for STD_INPUT_HANDLE, STD_OUTPUT_HANDLE and STD_ERROR_HANDLE |
|
| 9 | 10 |
|
| 10 | 11 |
"github.com/Azure/go-ansiterm/winterm" |
| 11 | 12 |
"github.com/docker/docker/pkg/term/windows" |
| 12 |
- "golang.org/x/sys/windows" |
|
| 13 | 13 |
) |
| 14 | 14 |
|
| 15 | 15 |
// State holds the console mode for the terminal. |
| ... | ... |
@@ -78,20 +78,24 @@ func StdStreams() (stdIn io.ReadCloser, stdOut, stdErr io.Writer) {
|
| 78 | 78 |
emulateStderr = false |
| 79 | 79 |
} |
| 80 | 80 |
|
| 81 |
+ // Temporarily use STD_INPUT_HANDLE, STD_OUTPUT_HANDLE and |
|
| 82 |
+ // STD_ERROR_HANDLE from syscall rather than x/sys/windows as long as |
|
| 83 |
+ // go-ansiterm hasn't switch to x/sys/windows. |
|
| 84 |
+ // TODO: switch back to x/sys/windows once go-ansiterm has switched |
|
| 81 | 85 |
if emulateStdin {
|
| 82 |
- stdIn = windowsconsole.NewAnsiReader(windows.STD_INPUT_HANDLE) |
|
| 86 |
+ stdIn = windowsconsole.NewAnsiReader(syscall.STD_INPUT_HANDLE) |
|
| 83 | 87 |
} else {
|
| 84 | 88 |
stdIn = os.Stdin |
| 85 | 89 |
} |
| 86 | 90 |
|
| 87 | 91 |
if emulateStdout {
|
| 88 |
- stdOut = windowsconsole.NewAnsiWriter(windows.STD_OUTPUT_HANDLE) |
|
| 92 |
+ stdOut = windowsconsole.NewAnsiWriter(syscall.STD_OUTPUT_HANDLE) |
|
| 89 | 93 |
} else {
|
| 90 | 94 |
stdOut = os.Stdout |
| 91 | 95 |
} |
| 92 | 96 |
|
| 93 | 97 |
if emulateStderr {
|
| 94 |
- stdErr = windowsconsole.NewAnsiWriter(windows.STD_ERROR_HANDLE) |
|
| 98 |
+ stdErr = windowsconsole.NewAnsiWriter(syscall.STD_ERROR_HANDLE) |
|
| 95 | 99 |
} else {
|
| 96 | 100 |
stdErr = os.Stderr |
| 97 | 101 |
} |