Commit Graph

182 Commits

Author SHA1 Message Date
Zachary Ware
1824544d82 Issue #23652: Merge with 3.4 2015-08-01 21:38:04 -05:00
Zachary Ware
3e77677692 Issue #23652: Make the select module compile against LSB headers.
Patch by Matt Frank.
2015-08-01 21:34:05 -05:00
Victor Stinner
45ca48b03d Issue #23485: select.devpoll.poll() is now retried when interrupted by a signal 2015-03-31 12:10:33 +02:00
Victor Stinner
4448c08451 Issue #23485: select.kqueue.control() is now retried when interrupted by a signal 2015-03-31 11:48:34 +02:00
Victor Stinner
41eba224de Issue #23485: select.epoll.poll() is now retried when interrupted by a signal 2015-03-30 21:59:21 +02:00
Victor Stinner
3c7d6e0693 Issue #23485: select.poll.poll() is now retried when interrupted by a signal 2015-03-30 21:38:00 +02:00
Victor Stinner
f70e1ca0fc Issue #23485: select.select() is now retried automatically with the recomputed
timeout when interrupted by a signal, except if the signal handler raises an
exception. This change is part of the PEP 475.

The asyncore and selectors module doesn't catch the InterruptedError exception
anymore when calling select.select(), since this function should not raise
InterruptedError anymore.
2015-03-30 21:16:11 +02:00
Victor Stinner
869e1778c0 Issue #22117: Replace usage of _PyTime_ROUND_UP with _PyTime_ROUND_CEILING
All these functions only accept positive timeouts, so this change has no effect
in practice.
2015-03-30 03:49:14 +02:00
Victor Stinner
c337838af7 Issue #22117: Use the new _PyTime_t API in the select module 2015-03-28 05:07:51 +01:00
Victor Stinner
54799672da Issue #23708: select.devpoll now retries its internal write() when interrupted
by a signal (EINTR).

Modify devpoll_flush() to use _Py_write() instead of calling directly write().
2015-03-19 23:33:09 +01:00
Victor Stinner
a555cfcb73 Issue #23694: Enhance _Py_open(), it now raises exceptions
* _Py_open() now raises exceptions on error. If open() fails, it raises an
  OSError with the filename.
* _Py_open() now releases the GIL while calling open()
* Add _Py_open_noraise() when _Py_open() cannot be used because the GIL is not
  held
2015-03-18 00:22:14 +01:00
Victor Stinner
329e492570 Issue #20656: Restore explicit downcast in select_select().
Cast from time_t (64 bit) to long (32 bit). It should fix a compiler warning.
2014-02-18 09:30:33 +01:00
Victor Stinner
5a8e5796f1 Close #20656: Fix select.select() on OpenBSD 64-bit 2014-02-18 01:35:40 +01:00
Victor Stinner
3c1b379ebd Issue #20320: select.select() and select.kqueue.control() now round the timeout
aways from zero, instead of rounding towards zero.

It should make test_asyncio more reliable, especially test_timeout_rounding() test.
2014-02-17 00:02:43 +01:00
Serhiy Storchaka
dfe98a102e Issue #20437: Fixed 22 potential bugs when deleting objects references. 2014-02-09 13:46:20 +02:00
Serhiy Storchaka
505ff755d7 Issue #20437: Fixed 21 potential bugs when deleting objects references. 2014-02-09 13:33:53 +02:00
Victor Stinner
dcd9740ad2 Issue #20452: select and selectors round (again) timeout away from zero for
poll and epoll

Improve also debug info to analyze the issue
2014-01-31 12:12:53 +01:00
Victor Stinner
38c72bd199 (Merge 3.3) Issue #20311: Revert 033137c12d88 (02f9db3e684e),
select.epoll.poll() rounds again the timeout towards zero
2014-01-25 14:40:04 +01:00
Victor Stinner
933209689e Issue #20311: Revert 033137c12d88, select.epoll.poll() rounds again the timeout
towards zero
2014-01-25 14:37:50 +01:00
Victor Stinner
09354fd606 (Merge 3.3) Issue #20311: select.epoll.poll() now rounds the timeout away from
zero, instead of rounding towards zero. For example, a timeout of one
microsecond is now rounded to one millisecond, instead of being rounded to
zero.
2014-01-21 01:42:11 +01:00
Victor Stinner
665486e0e7 Issue #20311: select.epoll.poll() now rounds the timeout away from zero,
instead of rounding towards zero. For example, a timeout of one microsecond is
now rounded to one millisecond, instead of being rounded to zero.
2014-01-21 01:41:00 +01:00
Christian Heimes
af01f66817 Issue #16136: Remove VMS support and VMS-related code 2013-12-21 16:19:10 +01:00
Serhiy Storchaka
03241e8017 Issue #17919: Fixed integer overflow in the eventmask parameter. 2013-12-14 19:18:39 +02:00
Serhiy Storchaka
5da107ac72 Issue #17919: Fixed integer overflow in the eventmask parameter. 2013-12-14 19:12:02 +02:00
Serhiy Storchaka
cb1c4c8c22 Issue #17919: select.poll.poll() again works with poll.POLLNVAL on AIX. 2013-12-13 12:08:55 +02:00
Serhiy Storchaka
3ad2d70947 Issue #17919: select.poll.poll() again works with poll.POLLNVAL on AIX. 2013-12-13 12:08:01 +02:00
Guido van Rossum
ee07b94788 Fix indentation of switch cases. 2013-12-06 17:46:22 -08:00
Victor Stinner
7613542a27 Issue #19437: Fix select.epoll.poll(), fix code handling PyMem_New() error
The bug was introduced with the select.epoll module! So it's 5 years old :-)
2013-10-30 19:57:52 +01:00
Victor Stinner
d72fe89b80 select.epoll.fromfd(fd) must be not change the inheritable flag of the file
descriptor
2013-08-28 12:22:39 +02:00
Victor Stinner
daf455554b Issue #18571: Implementation of the PEP 446: file descriptors and file handles
are now created non-inheritable; add functions os.get/set_inheritable(),
os.get/set_handle_inheritable() and socket.socket.get/set_inheritable().
2013-08-28 00:53:59 +02:00
Christian Heimes
9dd279a3ac Issue #11973: Fix a problem in kevent. The flags and fflags fields are now
properly handled as unsigned.
2013-08-25 14:57:38 +02:00
Christian Heimes
f1fe159822 Issue #11973: Fix a problem in kevent. The flags and fflags fields are now
properly handled as unsigned.
2013-08-25 14:57:00 +02:00
Richard Oudkerk
a93bf7b9a6 Fix devpoll_dealloc(). 2013-08-22 14:03:44 +01:00
Richard Oudkerk
168d59b669 Move definition of devpoll_internal_close() before devpoll_close(). 2013-08-22 13:31:15 +01:00
Richard Oudkerk
069d65c35a Fix compilation of select module on Solaris. 2013-08-22 13:04:23 +01:00
Victor Stinner
13423c3726 Close #18794: Add a fileno() method and a closed attribute to select.devpoll
objects.

Add also tests on fileno() method and closed attribute of select.epoll and select.kqueue.
2013-08-22 00:19:50 +02:00
Serhiy Storchaka
5617df1be6 Issue #8865: Concurrent invocation of select.poll.poll() now raises a
RuntimeError exception.  Patch by Christian Schubert.
2013-08-20 20:50:32 +03:00
Serhiy Storchaka
b1973c252c Issue #8865: Concurrent invocation of select.poll.poll() now raises a
RuntimeError exception.  Patch by Christian Schubert.
2013-08-20 20:38:21 +03:00
Victor Stinner
bbf8ce5b87 Issue #18408: Fix select.select() to handle PyList_New() failure (MemoryError)
in set2list()
2013-07-09 00:49:03 +02:00
Charles-Francois Natali
74ca886788 Issue #17917: Use PyModule_AddIntMacro() instead of PyModule_AddIntConstant()
when applicable.
2013-05-20 19:13:19 +02:00
Charles-Francois Natali
b1294fa9f4 Issue #12181: select module: Fix struct kevent definition on OpenBSD 64-bit
platforms. Patch by Federico Schwindt.
2013-05-06 21:26:05 +02:00
Charles-Francois Natali
002a77d2f7 Issue #12181: select module: Fix struct kevent definition on OpenBSD 64-bit
platforms. Patch by Federico Schwindt.
2013-05-06 21:24:31 +02:00
Charles-François Natali
c07fcbb698 Issue #16953: Fix socket module compilation on platforms with HAVE_BROKEN_POLL.
Patch by Jeffrey Armstrong.
2013-01-19 12:39:29 +01:00
Charles-François Natali
95195b35b8 Issue #16953: Fix socket module compilation on platforms with HAVE_BROKEN_POLL.
Patch by Jeffrey Armstrong.
2013-01-19 12:21:26 +01:00
Charles-François Natali
986a56cefe Issue #16953: Fix socket module compilation on platforms with HAVE_BROKEN_POLL.
Patch by Jeffrey Armstrong.
2013-01-19 12:19:10 +01:00
Serhiy Storchaka
9101e23ff6 Issue #15989: Fix several occurrences of integer overflow
when result of PyLong_AsLong() narrowed to int without checks.

This is a backport of changesets 13e2e44db99d and 525407d89277.
2013-01-19 12:41:45 +02:00
Serhiy Storchaka
441d30fac7 Issue #15989: Fix several occurrences of integer overflow
when result of PyLong_AsLong() narrowed to int without checks.

This is a backport of changesets 13e2e44db99d and 525407d89277.
2013-01-19 12:26:26 +02:00
Serhiy Storchaka
7898043868 Issue #15989: Fix several occurrences of integer overflow
when result of PyLong_AsLong() narrowed to int without checks.
2013-01-15 01:12:17 +02:00
Charles-François Natali
a6ebb2d7fb Issue #16876: Revert be8e6b81284e, which wasn't thread-safe: wait until a
solution is found for poll().
2013-01-12 12:31:00 +01:00
Charles-François Natali
f424f3856d Issue #16876: Optimize epoll.poll() by keeping a per-instance epoll events
buffer instead of allocating a new one at each poll().
2013-01-09 19:00:26 +01:00