diff options
| author | Benjamin Peterson <benjamin@python.org> | 2015-10-25 03:07:28 (GMT) |
|---|---|---|
| committer | Benjamin Peterson <benjamin@python.org> | 2015-10-25 03:07:28 (GMT) |
| commit | 2374ad7dd90218f36144224dd2a78bbe1d739f5c (patch) | |
| tree | dbf2501e79d1cd44636621bb0d6358a0bfdd044d /Lib/socket.py | |
| parent | b75e7f52698ff85b438ac3c8241b7b867213c99b (diff) | |
| parent | 2775d85d55a092e3aca9a72bf2e5328d95b0340f (diff) | |
| download | cpython-2374ad7dd90218f36144224dd2a78bbe1d739f5c.zip cpython-2374ad7dd90218f36144224dd2a78bbe1d739f5c.tar.gz cpython-2374ad7dd90218f36144224dd2a78bbe1d739f5c.tar.bz2 | |
merge 3.5 (#25471)
Diffstat (limited to 'Lib/socket.py')
| -rw-r--r-- | Lib/socket.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/Lib/socket.py b/Lib/socket.py index db34ab3..ed1b10a 100644 --- a/Lib/socket.py +++ b/Lib/socket.py @@ -193,7 +193,11 @@ class socket(_socket.socket): For IP sockets, the address info is a pair (hostaddr, port). """ fd, addr = self._accept() - sock = socket(self.family, self.type, self.proto, fileno=fd) + # If our type has the SOCK_NONBLOCK flag, we shouldn't pass it onto the + # new socket. We do not currently allow passing SOCK_NONBLOCK to + # accept4, so the returned socket is always blocking. + type = self.type & ~globals().get("SOCK_NONBLOCK", 0) + sock = socket(self.family, type, self.proto, fileno=fd) # Issue #7995: if no default timeout is set and the listening # socket had a (non-zero) timeout, force the new socket in blocking # mode to override platform-specific socket flags inheritance. |
