reject None as the buffering argument like the C implementation does #8546

This commit is contained in:
Benjamin Peterson 2010-04-27 21:01:54 +00:00
parent 1dc6b08f9e
commit a9bd6d5ea7
3 changed files with 5 additions and 5 deletions

View File

@ -61,7 +61,7 @@ Module Interface
classes. :func:`.open` uses the file's blksize (as obtained by
: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,
an :exc:`IOError` is raised.

View File

@ -40,7 +40,7 @@ class BlockingIOError(IOError):
self.characters_written = characters_written
def open(file, mode="r", buffering=None,
def open(file, mode="r", buffering=-1,
encoding=None, errors=None,
newline=None, closefd=True):
@ -155,7 +155,7 @@ def open(file, mode="r", buffering=None,
raise TypeError("invalid file: %r" % file)
if not isinstance(mode, basestring):
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)
if encoding is not None and not isinstance(encoding, basestring):
raise TypeError("invalid encoding: %r" % encoding)
@ -192,8 +192,6 @@ def open(file, mode="r", buffering=None,
(appending and "a" or "") +
(updating and "+" or ""),
closefd)
if buffering is None:
buffering = -1
line_buffering = False
if buffering == 1 or buffering < 0 and raw.isatty():
buffering = -1

View File

@ -27,6 +27,8 @@ Core and Builtins
Library
-------
- Issue #8546: Reject None given as the buffering argument to _pyio.open.
- Issue #8549: Fix compiling the _ssl extension under AIX. Patch by
Sridhar Ratnakumar.