Merge - Issue #12502: asyncore: fix polling loop with AF_UNIX sockets.

parent eef80b6e
...@@ -132,7 +132,8 @@ def poll(timeout=0.0, map=None): ...@@ -132,7 +132,8 @@ def poll(timeout=0.0, map=None):
is_w = obj.writable() is_w = obj.writable()
if is_r: if is_r:
r.append(fd) r.append(fd)
if is_w: # accepting sockets should not be writable
if is_w and not obj.accepting:
w.append(fd) w.append(fd)
if is_r or is_w: if is_r or is_w:
e.append(fd) e.append(fd)
...@@ -179,7 +180,8 @@ def poll2(timeout=0.0, map=None): ...@@ -179,7 +180,8 @@ def poll2(timeout=0.0, map=None):
flags = 0 flags = 0
if obj.readable(): if obj.readable():
flags |= select.POLLIN | select.POLLPRI flags |= select.POLLIN | select.POLLPRI
if obj.writable(): # accepting sockets should not be writable
if obj.writable() and not obj.accepting:
flags |= select.POLLOUT flags |= select.POLLOUT
if flags: if flags:
# Only check for exceptions if object was either readable # Only check for exceptions if object was either readable
......
...@@ -27,6 +27,8 @@ Core and Builtins ...@@ -27,6 +27,8 @@ Core and Builtins
Library Library
------- -------
- Issue #12502: asyncore: fix polling loop with AF_UNIX sockets.
- Issue #4376: ctypes now supports nested structures in a endian different than - Issue #4376: ctypes now supports nested structures in a endian different than
the parent structure. Patch by Vlad Riscutia. the parent structure. Patch by Vlad Riscutia.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment