Merged revisions 80544 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/trunk

........
  r80544 | benjamin.peterson | 2010-04-27 16:01:54 -0500 (Tue, 27 Apr 2010) | 1 line

  reject None as the buffering argument like the C implementation does #8546
........
This commit is contained in:
Benjamin Peterson 2010-04-27 21:07:21 +00:00
parent 06e34a9476
commit 95e392c111
3 changed files with 5 additions and 5 deletions

View File

@ -56,7 +56,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

@ -35,7 +35,7 @@ class BlockingIOError(IOError):
self.characters_written = characters_written
def open(file: (str, bytes), mode: str = "r", buffering: int = None,
def open(file: (str, bytes), mode: str = "r", buffering: int = -1,
encoding: str = None, errors: str = None,
newline: str = None, closefd: bool = True) -> "IOBase":
@ -150,7 +150,7 @@ def open(file: (str, bytes), mode: str = "r", buffering: int = None,
raise TypeError("invalid file: %r" % file)
if not isinstance(mode, str):
raise TypeError("invalid mode: %r" % mode)
if buffering is not None and not isinstance(buffering, int):
if not isinstance(buffering, int):
raise TypeError("invalid buffering: %r" % buffering)
if encoding is not None and not isinstance(encoding, str):
raise TypeError("invalid encoding: %r" % encoding)
@ -187,8 +187,6 @@ def open(file: (str, bytes), mode: str = "r", buffering: int = 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

@ -339,6 +339,8 @@ C-API
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.