diff options
author | Valentin Rothberg <rothberg@redhat.com> | 2020-04-07 12:09:48 +0200 |
---|---|---|
committer | Valentin Rothberg <rothberg@redhat.com> | 2020-04-07 12:09:48 +0200 |
commit | 42fcdbf1a85c8e23ccc25a0e7e66b3a51b8f11dd (patch) | |
tree | 3344313b57b160a877044f56eec3d8e3c1c1669c /vendor/github.com/vbauerster/mpb/v4/cwriter | |
parent | 64b6a197339e0436168e254ef9caf674ee9ff932 (diff) | |
download | podman-42fcdbf1a85c8e23ccc25a0e7e66b3a51b8f11dd.tar.gz podman-42fcdbf1a85c8e23ccc25a0e7e66b3a51b8f11dd.tar.bz2 podman-42fcdbf1a85c8e23ccc25a0e7e66b3a51b8f11dd.zip |
vendor c/image v5.4.2
Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
Diffstat (limited to 'vendor/github.com/vbauerster/mpb/v4/cwriter')
3 files changed, 0 insertions, 140 deletions
diff --git a/vendor/github.com/vbauerster/mpb/v4/cwriter/writer.go b/vendor/github.com/vbauerster/mpb/v4/cwriter/writer.go deleted file mode 100644 index 9ec1ec66b..000000000 --- a/vendor/github.com/vbauerster/mpb/v4/cwriter/writer.go +++ /dev/null @@ -1,71 +0,0 @@ -package cwriter - -import ( - "bytes" - "errors" - "fmt" - "io" - "os" - - "golang.org/x/crypto/ssh/terminal" -) - -// NotATTY not a TeleTYpewriter error. -var NotATTY = errors.New("not a terminal") - -var cuuAndEd = fmt.Sprintf("%c[%%dA%[1]c[J", 27) - -// Writer is a buffered the writer that updates the terminal. The -// contents of writer will be flushed when Flush is called. -type Writer struct { - out io.Writer - buf bytes.Buffer - lineCount int - fd uintptr - isTerminal bool -} - -// New returns a new Writer with defaults. -func New(out io.Writer) *Writer { - w := &Writer{out: out} - if f, ok := out.(*os.File); ok { - w.fd = f.Fd() - w.isTerminal = terminal.IsTerminal(int(w.fd)) - } - return w -} - -// Flush flushes the underlying buffer. -func (w *Writer) Flush(lineCount int) (err error) { - if w.lineCount > 0 { - w.clearLines() - } - w.lineCount = lineCount - _, err = w.buf.WriteTo(w.out) - return -} - -// Write appends the contents of p to the underlying buffer. -func (w *Writer) Write(p []byte) (n int, err error) { - return w.buf.Write(p) -} - -// WriteString writes string to the underlying buffer. -func (w *Writer) WriteString(s string) (n int, err error) { - return w.buf.WriteString(s) -} - -// ReadFrom reads from the provided io.Reader and writes to the -// underlying buffer. -func (w *Writer) ReadFrom(r io.Reader) (n int64, err error) { - return w.buf.ReadFrom(r) -} - -// GetWidth returns width of underlying terminal. -func (w *Writer) GetWidth() (int, error) { - if w.isTerminal { - tw, _, err := terminal.GetSize(int(w.fd)) - return tw, err - } - return -1, NotATTY -} diff --git a/vendor/github.com/vbauerster/mpb/v4/cwriter/writer_posix.go b/vendor/github.com/vbauerster/mpb/v4/cwriter/writer_posix.go deleted file mode 100644 index 3fb8b7d75..000000000 --- a/vendor/github.com/vbauerster/mpb/v4/cwriter/writer_posix.go +++ /dev/null @@ -1,9 +0,0 @@ -// +build !windows - -package cwriter - -import "fmt" - -func (w *Writer) clearLines() { - fmt.Fprintf(w.out, cuuAndEd, w.lineCount) -} diff --git a/vendor/github.com/vbauerster/mpb/v4/cwriter/writer_windows.go b/vendor/github.com/vbauerster/mpb/v4/cwriter/writer_windows.go deleted file mode 100644 index 712528900..000000000 --- a/vendor/github.com/vbauerster/mpb/v4/cwriter/writer_windows.go +++ /dev/null @@ -1,60 +0,0 @@ -// +build windows - -package cwriter - -import ( - "fmt" - "syscall" - "unsafe" -) - -var kernel32 = syscall.NewLazyDLL("kernel32.dll") - -var ( - procGetConsoleScreenBufferInfo = kernel32.NewProc("GetConsoleScreenBufferInfo") - procSetConsoleCursorPosition = kernel32.NewProc("SetConsoleCursorPosition") - procFillConsoleOutputCharacter = kernel32.NewProc("FillConsoleOutputCharacterW") - procFillConsoleOutputAttribute = kernel32.NewProc("FillConsoleOutputAttribute") -) - -type coord struct { - x int16 - y int16 -} - -type smallRect struct { - left int16 - top int16 - right int16 - bottom int16 -} - -type consoleScreenBufferInfo struct { - size coord - cursorPosition coord - attributes uint16 - window smallRect - maximumWindowSize coord -} - -func (w *Writer) clearLines() { - if !w.isTerminal { - fmt.Fprintf(w.out, cuuAndEd, w.lineCount) - } - var info consoleScreenBufferInfo - procGetConsoleScreenBufferInfo.Call(w.fd, uintptr(unsafe.Pointer(&info))) - - info.cursorPosition.y -= int16(w.lineCount) - if info.cursorPosition.y < 0 { - info.cursorPosition.y = 0 - } - procSetConsoleCursorPosition.Call(w.fd, uintptr(uint32(uint16(info.cursorPosition.y))<<16|uint32(uint16(info.cursorPosition.x)))) - - // clear the lines - cursor := coord{ - x: info.window.left, - y: info.cursorPosition.y, - } - count := uint32(info.size.x) * uint32(w.lineCount) - procFillConsoleOutputCharacter.Call(w.fd, uintptr(' '), uintptr(count), *(*uintptr)(unsafe.Pointer(&cursor)), uintptr(unsafe.Pointer(new(uint32)))) -} |