diff options
author | Jhon Honce <jhonce@redhat.com> | 2019-06-18 09:35:48 -0700 |
---|---|---|
committer | Jhon Honce <jhonce@redhat.com> | 2019-06-18 17:37:53 -0700 |
commit | d0d9a4c9b1f525ad1132947cf883fdd66941fe62 (patch) | |
tree | a3cd7d64877f8cf1f664d73ea778af36d387393a /vendor/github.com/konsorten/go-windows-terminal-sequences/sequences.go | |
parent | 1c6e4dc6bba303132a546e398a1c2de254d07f86 (diff) | |
download | podman-d0d9a4c9b1f525ad1132947cf883fdd66941fe62.tar.gz podman-d0d9a4c9b1f525ad1132947cf883fdd66941fe62.tar.bz2 podman-d0d9a4c9b1f525ad1132947cf883fdd66941fe62.zip |
Vendor in logrus v1.4.2
Fixes #3346
Signed-off-by: Jhon Honce <jhonce@redhat.com>
Diffstat (limited to 'vendor/github.com/konsorten/go-windows-terminal-sequences/sequences.go')
-rw-r--r-- | vendor/github.com/konsorten/go-windows-terminal-sequences/sequences.go | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/vendor/github.com/konsorten/go-windows-terminal-sequences/sequences.go b/vendor/github.com/konsorten/go-windows-terminal-sequences/sequences.go new file mode 100644 index 000000000..ef18d8f97 --- /dev/null +++ b/vendor/github.com/konsorten/go-windows-terminal-sequences/sequences.go @@ -0,0 +1,36 @@ +// +build windows + +package sequences + +import ( + "syscall" + "unsafe" +) + +var ( + kernel32Dll *syscall.LazyDLL = syscall.NewLazyDLL("Kernel32.dll") + setConsoleMode *syscall.LazyProc = kernel32Dll.NewProc("SetConsoleMode") +) + +func EnableVirtualTerminalProcessing(stream syscall.Handle, enable bool) error { + const ENABLE_VIRTUAL_TERMINAL_PROCESSING uint32 = 0x4 + + var mode uint32 + err := syscall.GetConsoleMode(syscall.Stdout, &mode) + if err != nil { + return err + } + + if enable { + mode |= ENABLE_VIRTUAL_TERMINAL_PROCESSING + } else { + mode &^= ENABLE_VIRTUAL_TERMINAL_PROCESSING + } + + ret, _, err := setConsoleMode.Call(uintptr(unsafe.Pointer(stream)), uintptr(mode)) + if ret == 0 { + return err + } + + return nil +} |