mirror of
https://github.com/python/cpython.git
synced 2025-09-18 06:30:38 +00:00
reject None as the buffering argument like the C implementation does #8546
This commit is contained in:
parent
1dc6b08f9e
commit
a9bd6d5ea7
3 changed files with 5 additions and 5 deletions
|
@ -61,7 +61,7 @@ Module Interface
|
||||||
classes. :func:`.open` uses the file's blksize (as obtained by
|
classes. :func:`.open` uses the file's blksize (as obtained by
|
||||||
:func:`os.stat`) if possible.
|
:func:`os.stat`) if possible.
|
||||||
|
|
||||||
.. function:: open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True)
|
.. function:: open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True)
|
||||||
|
|
||||||
Open *file* and return a corresponding stream. If the file cannot be opened,
|
Open *file* and return a corresponding stream. If the file cannot be opened,
|
||||||
an :exc:`IOError` is raised.
|
an :exc:`IOError` is raised.
|
||||||
|
|
|
@ -40,7 +40,7 @@ class BlockingIOError(IOError):
|
||||||
self.characters_written = characters_written
|
self.characters_written = characters_written
|
||||||
|
|
||||||
|
|
||||||
def open(file, mode="r", buffering=None,
|
def open(file, mode="r", buffering=-1,
|
||||||
encoding=None, errors=None,
|
encoding=None, errors=None,
|
||||||
newline=None, closefd=True):
|
newline=None, closefd=True):
|
||||||
|
|
||||||
|
@ -155,7 +155,7 @@ def open(file, mode="r", buffering=None,
|
||||||
raise TypeError("invalid file: %r" % file)
|
raise TypeError("invalid file: %r" % file)
|
||||||
if not isinstance(mode, basestring):
|
if not isinstance(mode, basestring):
|
||||||
raise TypeError("invalid mode: %r" % mode)
|
raise TypeError("invalid mode: %r" % mode)
|
||||||
if buffering is not None and not isinstance(buffering, (int, long)):
|
if not isinstance(buffering, (int, long)):
|
||||||
raise TypeError("invalid buffering: %r" % buffering)
|
raise TypeError("invalid buffering: %r" % buffering)
|
||||||
if encoding is not None and not isinstance(encoding, basestring):
|
if encoding is not None and not isinstance(encoding, basestring):
|
||||||
raise TypeError("invalid encoding: %r" % encoding)
|
raise TypeError("invalid encoding: %r" % encoding)
|
||||||
|
@ -192,8 +192,6 @@ def open(file, mode="r", buffering=None,
|
||||||
(appending and "a" or "") +
|
(appending and "a" or "") +
|
||||||
(updating and "+" or ""),
|
(updating and "+" or ""),
|
||||||
closefd)
|
closefd)
|
||||||
if buffering is None:
|
|
||||||
buffering = -1
|
|
||||||
line_buffering = False
|
line_buffering = False
|
||||||
if buffering == 1 or buffering < 0 and raw.isatty():
|
if buffering == 1 or buffering < 0 and raw.isatty():
|
||||||
buffering = -1
|
buffering = -1
|
||||||
|
|
|
@ -27,6 +27,8 @@ Core and Builtins
|
||||||
Library
|
Library
|
||||||
-------
|
-------
|
||||||
|
|
||||||
|
- Issue #8546: Reject None given as the buffering argument to _pyio.open.
|
||||||
|
|
||||||
- Issue #8549: Fix compiling the _ssl extension under AIX. Patch by
|
- Issue #8549: Fix compiling the _ssl extension under AIX. Patch by
|
||||||
Sridhar Ratnakumar.
|
Sridhar Ratnakumar.
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue