From bad0de0dcbae82d96f68d1eec1701042d5dfa985 Mon Sep 17 00:00:00 2001 From: Péter Szilágyi Date: Wed, 2 Nov 2016 18:22:53 +0200 Subject: vendor: pull in azure sdk and openpgp signer --- vendor/github.com/mattn/go-colorable/colorable_windows.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'vendor/github.com/mattn/go-colorable') diff --git a/vendor/github.com/mattn/go-colorable/colorable_windows.go b/vendor/github.com/mattn/go-colorable/colorable_windows.go index bc84adfaf..448277f56 100644 --- a/vendor/github.com/mattn/go-colorable/colorable_windows.go +++ b/vendor/github.com/mattn/go-colorable/colorable_windows.go @@ -72,6 +72,7 @@ type Writer struct { handle syscall.Handle lastbuf bytes.Buffer oldattr word + oldpos coord } func NewColorable(file *os.File) io.Writer { @@ -83,7 +84,7 @@ func NewColorable(file *os.File) io.Writer { var csbi consoleScreenBufferInfo handle := syscall.Handle(file.Fd()) procGetConsoleScreenBufferInfo.Call(uintptr(handle), uintptr(unsafe.Pointer(&csbi))) - return &Writer{out: file, handle: handle, oldattr: csbi.attributes} + return &Writer{out: file, handle: handle, oldattr: csbi.attributes, oldpos: coord{0, 0}} } else { return file } @@ -644,6 +645,11 @@ loop: ci.visible = 0 procSetConsoleCursorInfo.Call(uintptr(w.handle), uintptr(unsafe.Pointer(&ci))) } + case 's': + procGetConsoleScreenBufferInfo.Call(uintptr(w.handle), uintptr(unsafe.Pointer(&csbi))) + w.oldpos = csbi.cursorPosition + case 'u': + procSetConsoleCursorPosition.Call(uintptr(w.handle), *(*uintptr)(unsafe.Pointer(&w.oldpos))) } } return len(data) - w.lastbuf.Len(), nil -- cgit