mirror of https://github.com/python/cpython
Issue #5798: Handle select.poll flag oddities properly on OS X.
This fixes test_asynchat and test_smtplib failures on OS X. (Backport of r73182 from trunk.)
This commit is contained in:
parent
042cf1ae8c
commit
f34e396b18
|
@ -103,10 +103,16 @@ def readwrite(obj, flags):
|
|||
obj.handle_read_event()
|
||||
if flags & select.POLLOUT:
|
||||
obj.handle_write_event()
|
||||
if flags & (select.POLLHUP | select.POLLERR | select.POLLNVAL):
|
||||
obj.handle_close()
|
||||
if flags & select.POLLPRI:
|
||||
obj.handle_expt_event()
|
||||
if flags & (select.POLLHUP | select.POLLERR | select.POLLNVAL):
|
||||
obj.handle_close()
|
||||
except socket.error, e:
|
||||
if e.args[0] not in (EBADF, ECONNRESET, ENOTCONN, ESHUTDOWN,
|
||||
ECONNABORTED):
|
||||
obj.handle_error()
|
||||
else:
|
||||
obj.handle_close()
|
||||
except _reraised_exceptions:
|
||||
raise
|
||||
except:
|
||||
|
|
12
Misc/NEWS
12
Misc/NEWS
|
@ -4,6 +4,18 @@ Python News
|
|||
|
||||
(editors: check NEWS.help for information about editing NEWS using ReST.)
|
||||
|
||||
What's New in Python 2.6.6?
|
||||
===========================
|
||||
|
||||
*Release date: XXXX-XX-XX*
|
||||
|
||||
Library
|
||||
-------
|
||||
|
||||
- Issue #5798: Handle select.poll flag oddities properly on OS X.
|
||||
This fixes test_asynchat and test_smtplib failures on OS X.
|
||||
|
||||
|
||||
What's New in Python 2.6.6 rc 1?
|
||||
================================
|
||||
|
||||
|
|
Loading…
Reference in New Issue