Revendor go-winio to v0.4.1
Signed-off-by: Darren Stahl <darst@microsoft.com> Upstream-commit: af7d8d09ef2dde07c9c0004a14e3a28c93007458 Component: engine
This commit is contained in:
@ -1,7 +1,7 @@
|
||||
# the following lines are in sorted order, FYI
|
||||
github.com/Azure/go-ansiterm 388960b655244e76e24c75f48631564eaefade62
|
||||
github.com/Microsoft/hcsshim v0.5.17
|
||||
github.com/Microsoft/go-winio v0.4.0
|
||||
github.com/Microsoft/go-winio v0.4.1
|
||||
github.com/Sirupsen/logrus v0.11.0
|
||||
github.com/davecgh/go-spew 346938d642f2ec3594ed81d874461961cd0faa76
|
||||
github.com/docker/libtrust 9cbd2a1374f46905c68a4eb3694a130610adc62a
|
||||
|
||||
8
components/engine/vendor/github.com/Microsoft/go-winio/file.go
generated
vendored
8
components/engine/vendor/github.com/Microsoft/go-winio/file.go
generated
vendored
@ -124,7 +124,8 @@ func (f *win32File) Close() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
// prepareIo prepares for a new IO operation
|
||||
// prepareIo prepares for a new IO operation.
|
||||
// The caller must call f.wg.Done() when the IO is finished, prior to Close() returning.
|
||||
func (f *win32File) prepareIo() (*ioOperation, error) {
|
||||
f.wg.Add(1)
|
||||
if f.closing {
|
||||
@ -155,7 +156,6 @@ func ioCompletionProcessor(h syscall.Handle) {
|
||||
// the operation has actually completed.
|
||||
func (f *win32File) asyncIo(c *ioOperation, d *deadlineHandler, bytes uint32, err error) (int, error) {
|
||||
if err != syscall.ERROR_IO_PENDING {
|
||||
f.wg.Done()
|
||||
return int(bytes), err
|
||||
}
|
||||
|
||||
@ -192,7 +192,6 @@ func (f *win32File) asyncIo(c *ioOperation, d *deadlineHandler, bytes uint32, er
|
||||
// code to ioCompletionProcessor, c must remain alive
|
||||
// until the channel read is complete.
|
||||
runtime.KeepAlive(c)
|
||||
f.wg.Done()
|
||||
return int(r.bytes), err
|
||||
}
|
||||
|
||||
@ -202,6 +201,7 @@ func (f *win32File) Read(b []byte) (int, error) {
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
defer f.wg.Done()
|
||||
|
||||
if f.readDeadline.timedout.isSet() {
|
||||
return 0, ErrTimeout
|
||||
@ -228,6 +228,8 @@ func (f *win32File) Write(b []byte) (int, error) {
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
defer f.wg.Done()
|
||||
|
||||
if f.writeDeadline.timedout.isSet() {
|
||||
return 0, ErrTimeout
|
||||
}
|
||||
|
||||
2
components/engine/vendor/github.com/Microsoft/go-winio/pipe.go
generated
vendored
2
components/engine/vendor/github.com/Microsoft/go-winio/pipe.go
generated
vendored
@ -367,6 +367,8 @@ func connectPipe(p *win32File) error {
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer p.wg.Done()
|
||||
|
||||
err = connectNamedPipe(p.handle, &c.o)
|
||||
_, err = p.asyncIo(c, nil, 0, err)
|
||||
if err != nil && err != cERROR_PIPE_CONNECTED {
|
||||
|
||||
Reference in New Issue
Block a user