]> Cypherpunks repositories - gostls13.git/commitdiff
syscall: avoid setting O_NONBLOCK needlessly by checking flags beforehand
authorAndy Pan <panjf2000@gmail.com>
Wed, 9 Aug 2023 13:13:50 +0000 (21:13 +0800)
committerGopher Robot <gobot@golang.org>
Thu, 10 Aug 2023 14:38:22 +0000 (14:38 +0000)
Change-Id: I097a2941f1d1a7fd98ccf1534940d03f47ac3229
Reviewed-on: https://go-review.googlesource.com/c/go/+/517675
Auto-Submit: Ian Lance Taylor <iant@google.com>
Reviewed-by: Michael Knyszek <mknyszek@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@google.com>
Run-TryBot: Ian Lance Taylor <iant@google.com>
Run-TryBot: Andy Pan <panjf2000@gmail.com>

src/syscall/exec_unix.go

index 206c0ab32b5b29bbe4c4b9276d49b43b8437d5d6..c6a6caaa70894606144bfecbe87293236ead1d29 100644 (file)
@@ -107,6 +107,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 {