diff options
author | Jason A. Donenfeld <Jason@zx2c4.com> | 2021-03-05 16:05:02 -0700 |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2021-03-05 16:05:13 -0700 |
commit | bd160892d972d4b76ea549efd6ca4f1f9572f03d (patch) | |
tree | ddb95bef28947c89d9ae80e537f61e28ba3d43b6 /ringlogger | |
parent | manager: use new DialConfig struct for pipe (diff) | |
download | wireguard-windows-bd160892d972d4b76ea549efd6ca4f1f9572f03d.tar.xz wireguard-windows-bd160892d972d4b76ea549efd6ca4f1f9572f03d.zip |
ringlogger: account for ERROR_ALREADY_EXISTS returns
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'ringlogger')
-rw-r--r-- | ringlogger/dump.go | 2 | ||||
-rw-r--r-- | ringlogger/ringlogger.go | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/ringlogger/dump.go b/ringlogger/dump.go index 16a3247c..8b5651e3 100644 --- a/ringlogger/dump.go +++ b/ringlogger/dump.go @@ -27,7 +27,7 @@ func DumpTo(out io.Writer, notSystem bool) error { } defer file.Close() mapping, err := windows.CreateFileMapping(windows.Handle(file.Fd()), nil, windows.PAGE_READONLY, 0, 0, nil) - if err != nil { + if err != nil && err != windows.ERROR_ALREADY_EXISTS { return err } rl, err := newRingloggerFromMappingHandle(mapping, "DMP", windows.FILE_MAP_READ) diff --git a/ringlogger/ringlogger.go b/ringlogger/ringlogger.go index 718a94b5..2d7c0c8f 100644 --- a/ringlogger/ringlogger.go +++ b/ringlogger/ringlogger.go @@ -58,7 +58,7 @@ func NewRinglogger(filename string, tag string) (*Ringlogger, error) { return nil, err } mapping, err := windows.CreateFileMapping(windows.Handle(file.Fd()), nil, windows.PAGE_READWRITE, 0, 0, nil) - if err != nil { + if err != nil && err != windows.ERROR_ALREADY_EXISTS { return nil, err } rl, err := newRingloggerFromMappingHandle(mapping, tag, windows.FILE_MAP_WRITE) @@ -237,7 +237,7 @@ func (rl *Ringlogger) Close() error { func (rl *Ringlogger) ExportInheritableMappingHandle() (handleToClose windows.Handle, err error) { handleToClose, err = windows.CreateFileMapping(windows.Handle(rl.file.Fd()), nil, windows.PAGE_READONLY, 0, 0, nil) - if err != nil { + if err != nil && err != windows.ERROR_ALREADY_EXISTS { return } err = windows.SetHandleInformation(handleToClose, windows.HANDLE_FLAG_INHERIT, windows.HANDLE_FLAG_INHERIT) |