while it is holding a lock to a buffered I/O object, and the main thread
tries to use the same I/O object (typically stdout or stderr). A fatal
error is emitted instead.
while it is holding a lock to a buffered I/O object, and the main thread
tries to use the same I/O object (typically stdout or stderr). A fatal
error is emitted instead.
raise a SystemError if a function returns a result and raises an exception.
The SystemError is chained to the previous exception.
Refactor also PyObject_Call() and PyCFunction_Call() to make them more readable.
Remove some checks which became useless (duplicate checks).
Change reviewed by Serhiy Storchaka.
with an assertion error if they are called with an exception set
(PyErr_Occurred()).
If these functions are called with an exception set, the exception may be
cleared and so the caller looses its exception.
Add also assertions to PyEval_CallObjectWithKeywords() and call_function() to
check if the function succeed with no exception set, or the function failed
with an exception set.
no longer lose data when an underlying read system call is interrupted.
IOError is no longer raised due to a read system call returning EINTR
from within these methods.
no longer lose data when an underlying read system call is interrupted.
IOError is no longer raised due to a read system call returning EINTR
from within these methods.
raised when the wrapped raw file is non-blocking and the write would block.
Previous code assumed that the raw write() would raise BlockingIOError, but
RawIOBase.write() is defined to returned None when the call would block.
Patch by sbt.
raised when the wrapped raw file is non-blocking and the write would block.
Previous code assumed that the raw write() would raise BlockingIOError, but
RawIOBase.write() is defined to returned None when the call would block.
Patch by sbt.
on a file opened in read+write mode (namely: reading, seeking a bit forward,
writing, then seeking before the previous write but still within buffered
data, and writing again).
on a file opened in read+write mode (namely: reading, seeking a bit forward,
writing, then seeking before the previous write but still within buffered
data, and writing again).
on a file opened in read+write mode (namely: reading, seeking a bit forward,
writing, then seeking before the previous write but still within buffered
data, and writing again).
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r88610 | antoine.pitrou | 2011-02-25 22:24:11 +0100 (ven., 25 févr. 2011) | 4 lines
Issue #10956: Buffered I/O classes retry reading or writing after a signal
has arrived and the handler returned successfully.
........
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r86981 | antoine.pitrou | 2010-12-03 19:41:39 +0100 (ven., 03 déc. 2010) | 5 lines
Issue #10478: Reentrant calls inside buffered IO objects (for example by
way of a signal handler) now raise a RuntimeError instead of freezing the
current process.
........
r86984 | antoine.pitrou | 2010-12-03 20:14:17 +0100 (ven., 03 déc. 2010) | 3 lines
Add an "advanced topics" section to the io doc.
........
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r83944 | antoine.pitrou | 2010-08-11 15:31:33 +0200 (mer., 11 août 2010) | 6 lines
Issue #9550: a BufferedReader could issue an additional read when the
original read request had been satisfied, which can block indefinitely
when the underlying raw IO channel is e.g. a socket. Report and original
patch by Jason V. Miller.
........
original read request had been satisfied, which can block indefinitely
when the underlying raw IO channel is e.g. a socket. Report and original
patch by Jason V. Miller.
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r83411 | antoine.pitrou | 2010-08-01 18:53:42 +0200 (dim., 01 août 2010) | 4 lines
Issue #9448: Fix a leak of OS resources (mutexes or semaphores) when
re-initializing a buffered IO object by calling its `__init__` method.
........
svn+ssh://pythondev@svn.python.org/python/branches/py3k
................
r80722 | antoine.pitrou | 2010-05-03 18:48:20 +0200 (lun., 03 mai 2010) | 11 lines
Merged revisions 80720 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r80720 | antoine.pitrou | 2010-05-03 18:25:33 +0200 (lun., 03 mai 2010) | 5 lines
Issue #7865: The close() method of :mod:`io` objects should not swallow
exceptions raised by the implicit flush(). Also ensure that calling
close() several times is supported. Patch by Pascal Chambon.
........
................
svn+ssh://pythondev@svn.python.org/python/trunk
........
r80720 | antoine.pitrou | 2010-05-03 18:25:33 +0200 (lun., 03 mai 2010) | 5 lines
Issue #7865: The close() method of :mod:`io` objects should not swallow
exceptions raised by the implicit flush(). Also ensure that calling
close() several times is supported. Patch by Pascal Chambon.
........
svn+ssh://pythondev@svn.python.org/python/branches/py3k
................
r76806 | benjamin.peterson | 2009-12-13 13:25:34 -0600 (Sun, 13 Dec 2009) | 14 lines
Merged revisions 76805 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r76805 | benjamin.peterson | 2009-12-13 13:19:07 -0600 (Sun, 13 Dec 2009) | 7 lines
accept None as the same as having passed no argument in file types #7349
This is for consistency with imitation file objects like StringIO and BytesIO.
This commit also adds a few tests, where they were lacking for concerned
methods.
........
................
r76808 | benjamin.peterson | 2009-12-13 13:28:09 -0600 (Sun, 13 Dec 2009) | 9 lines
Merged revisions 76807 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r76807 | benjamin.peterson | 2009-12-13 13:27:02 -0600 (Sun, 13 Dec 2009) | 1 line
remove unused variable
........
................
svn+ssh://pythondev@svn.python.org/python/trunk
........
r76805 | benjamin.peterson | 2009-12-13 13:19:07 -0600 (Sun, 13 Dec 2009) | 7 lines
accept None as the same as having passed no argument in file types #7349
This is for consistency with imitation file objects like StringIO and BytesIO.
This commit also adds a few tests, where they were lacking for concerned
methods.
........
svn+ssh://pythondev@svn.python.org/python/branches/py3k
................
r75941 | mark.dickinson | 2009-10-29 09:58:06 +0000 (Thu, 29 Oct 2009) | 11 lines
Merged revisions 75939 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r75939 | mark.dickinson | 2009-10-29 09:46:04 +0000 (Thu, 29 Oct 2009) | 5 lines
Roll back ill-considered attempts to fix printf specifier mismatch for off_t.
The sensible solution seems to be to implement %lld for PyString_FromFormat(V)
and PyErr_Format. See issue #7228.
........
................
svn+ssh://pythondev@svn.python.org/python/trunk
........
r75939 | mark.dickinson | 2009-10-29 09:46:04 +0000 (Thu, 29 Oct 2009) | 5 lines
Roll back ill-considered attempts to fix printf specifier mismatch for off_t.
The sensible solution seems to be to implement %lld for PyString_FromFormat(V)
and PyErr_Format. See issue #7228.
........
svn+ssh://pythondev@svn.python.org/python/branches/py3k
................
r75881 | mark.dickinson | 2009-10-27 21:49:48 +0000 (Tue, 27 Oct 2009) | 10 lines
Merged revisions 75879 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r75879 | mark.dickinson | 2009-10-27 21:48:20 +0000 (Tue, 27 Oct 2009) | 3 lines
Silence gcc warnings when trying to print an off_t using "lld", on platforms
where off_t has type long (e.g., 64-bit Linux).
........
................
svn+ssh://pythondev@svn.python.org/python/trunk
........
r75879 | mark.dickinson | 2009-10-27 21:48:20 +0000 (Tue, 27 Oct 2009) | 3 lines
Silence gcc warnings when trying to print an off_t using "lld", on platforms
where off_t has type long (e.g., 64-bit Linux).
........
svn+ssh://pythondev@svn.python.org/python/branches/py3k
................
r75729 | mark.dickinson | 2009-10-26 20:02:55 +0000 (Mon, 26 Oct 2009) | 10 lines
Merged revisions 75728 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r75728 | mark.dickinson | 2009-10-26 19:59:23 +0000 (Mon, 26 Oct 2009) | 3 lines
Use correct conversion specifier and length modifier when printing an
integer of type off_t. Also, don't assume that long long is available.
........
................
svn+ssh://pythondev@svn.python.org/python/trunk
........
r75728 | mark.dickinson | 2009-10-26 19:59:23 +0000 (Mon, 26 Oct 2009) | 3 lines
Use correct conversion specifier and length modifier when printing an
integer of type off_t. Also, don't assume that long long is available.
........
svn+ssh://pythondev@svn.python.org/python/branches/py3k
................
r74338 | antoine.pitrou | 2009-08-06 22:29:56 +0200 (jeu., 06 août 2009) | 14 lines
Merged revisions 74336 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r74336 | antoine.pitrou | 2009-08-06 22:18:29 +0200 (jeu., 06 août 2009) | 8 lines
Issue #6629: Fix a data corruption issue in the new `io` package, which could
occur when writing to a BufferedRandom object (e.g. a file opened in "rb+" or
"wb+" mode) after having buffered a certain amount of data for reading. This
bug was not present in the pure Python implementation.
Yes, this is a serious issue.
........
................
svn+ssh://pythondev@svn.python.org/python/trunk
........
r74336 | antoine.pitrou | 2009-08-06 22:18:29 +0200 (jeu., 06 août 2009) | 8 lines
Issue #6629: Fix a data corruption issue in the new `io` package, which could
occur when writing to a BufferedRandom object (e.g. a file opened in "rb+" or
"wb+" mode) after having buffered a certain amount of data for reading. This
bug was not present in the pure Python implementation.
Yes, this is a serious issue.
........