mirror of
https://github.com/rwinkhart/sys.git
synced 2026-09-01 14:47:28 -04:00
windows: errnoErr(): return ENOENT to reduce code duplication
Change-Id: I51c08a4add9c2b31c4bb7c4421dde227b4fff489 GitHub-Last-Rev: ef8ef8646ca90df893bee4cc8d7879dc1a80ebe4 GitHub-Pull-Request: golang/sys#89 Reviewed-on: https://go-review.googlesource.com/c/sys/+/259537 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> Trust: Alex Brainman <alex.brainman@gmail.com>
This commit is contained in:
committed by
Ian Lance Taylor
parent
c1f3e3309c
commit
dfb3f7c4e6
@@ -303,17 +303,13 @@ func (r *Rets) SetReturnValuesCode() string {
|
|||||||
|
|
||||||
func (r *Rets) useLongHandleErrorCode(retvar string) string {
|
func (r *Rets) useLongHandleErrorCode(retvar string) string {
|
||||||
const code = `if %s {
|
const code = `if %s {
|
||||||
if e1 != 0 {
|
err = errnoErr(e1)
|
||||||
err = errnoErr(e1)
|
|
||||||
} else {
|
|
||||||
err = %sEINVAL
|
|
||||||
}
|
|
||||||
}`
|
}`
|
||||||
cond := retvar + " == 0"
|
cond := retvar + " == 0"
|
||||||
if r.FailCond != "" {
|
if r.FailCond != "" {
|
||||||
cond = strings.Replace(r.FailCond, "failretval", retvar, 1)
|
cond = strings.Replace(r.FailCond, "failretval", retvar, 1)
|
||||||
}
|
}
|
||||||
return fmt.Sprintf(code, cond, syscalldot())
|
return fmt.Sprintf(code, cond)
|
||||||
}
|
}
|
||||||
|
|
||||||
// SetErrorCode returns source code that sets return parameters.
|
// SetErrorCode returns source code that sets return parameters.
|
||||||
@@ -867,7 +863,7 @@ var (
|
|||||||
func errnoErr(e {{syscalldot}}Errno) error {
|
func errnoErr(e {{syscalldot}}Errno) error {
|
||||||
switch e {
|
switch e {
|
||||||
case 0:
|
case 0:
|
||||||
return nil
|
return {{syscalldot}}EINVAL
|
||||||
case errnoERROR_IO_PENDING:
|
case errnoERROR_IO_PENDING:
|
||||||
return errERROR_IO_PENDING
|
return errERROR_IO_PENDING
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -390,11 +390,7 @@ func GetProcAddressByOrdinal(module Handle, ordinal uintptr) (proc uintptr, err
|
|||||||
r0, _, e1 := syscall.Syscall(procGetProcAddress.Addr(), 2, uintptr(module), ordinal, 0)
|
r0, _, e1 := syscall.Syscall(procGetProcAddress.Addr(), 2, uintptr(module), ordinal, 0)
|
||||||
proc = uintptr(r0)
|
proc = uintptr(r0)
|
||||||
if proc == 0 {
|
if proc == 0 {
|
||||||
if e1 != 0 {
|
err = errnoErr(e1)
|
||||||
err = errnoErr(e1)
|
|
||||||
} else {
|
|
||||||
err = syscall.EINVAL
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@@ -1091,11 +1087,7 @@ func WSASendMsg(fd Handle, msg *WSAMsg, flags uint32, bytesSent *uint32, overlap
|
|||||||
}
|
}
|
||||||
r1, _, e1 := syscall.Syscall6(sendRecvMsgFunc.sendAddr, 6, uintptr(fd), uintptr(unsafe.Pointer(msg)), uintptr(flags), uintptr(unsafe.Pointer(bytesSent)), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine)))
|
r1, _, e1 := syscall.Syscall6(sendRecvMsgFunc.sendAddr, 6, uintptr(fd), uintptr(unsafe.Pointer(msg)), uintptr(flags), uintptr(unsafe.Pointer(bytesSent)), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine)))
|
||||||
if r1 == socket_error {
|
if r1 == socket_error {
|
||||||
if e1 != 0 {
|
err = errnoErr(e1)
|
||||||
err = errnoErr(e1)
|
|
||||||
} else {
|
|
||||||
err = syscall.EINVAL
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@@ -1107,11 +1099,7 @@ func WSARecvMsg(fd Handle, msg *WSAMsg, bytesReceived *uint32, overlapped *Overl
|
|||||||
}
|
}
|
||||||
r1, _, e1 := syscall.Syscall6(sendRecvMsgFunc.recvAddr, 5, uintptr(fd), uintptr(unsafe.Pointer(msg)), uintptr(unsafe.Pointer(bytesReceived)), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine)), 0)
|
r1, _, e1 := syscall.Syscall6(sendRecvMsgFunc.recvAddr, 5, uintptr(fd), uintptr(unsafe.Pointer(msg)), uintptr(unsafe.Pointer(bytesReceived)), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine)), 0)
|
||||||
if r1 == socket_error {
|
if r1 == socket_error {
|
||||||
if e1 != 0 {
|
err = errnoErr(e1)
|
||||||
err = errnoErr(e1)
|
|
||||||
} else {
|
|
||||||
err = syscall.EINVAL
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|||||||
+249
-1241
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user