diff --git a/unix/syscall_unix.go b/unix/syscall_unix.go index 8bb30e7ce..f6eda2705 100644 --- a/unix/syscall_unix.go +++ b/unix/syscall_unix.go @@ -549,6 +549,9 @@ func SetNonblock(fd int, nonblocking bool) (err error) { if err != nil { return err } + if (flag&O_NONBLOCK != 0) == nonblocking { + return nil + } if nonblocking { flag |= O_NONBLOCK } else {