diff options
author | Benjamin Peterson <benjamin@python.org> | 2011-05-26 14:56:41 (GMT) |
---|---|---|
committer | Benjamin Peterson <benjamin@python.org> | 2011-05-26 14:56:41 (GMT) |
commit | 4fa68ab10bc6bcd6d0fcc422bb0807f6f9d56264 (patch) | |
tree | ec50a2912791967170ff9f89d40e7d5dc86ad77a | |
parent | dbfba1667cce8a4e4b28a1cd1f8772e063c06e49 (diff) | |
download | cpython-4fa68ab10bc6bcd6d0fcc422bb0807f6f9d56264.zip cpython-4fa68ab10bc6bcd6d0fcc422bb0807f6f9d56264.tar.gz cpython-4fa68ab10bc6bcd6d0fcc422bb0807f6f9d56264.tar.bz2 |
raise an ValueError in getvalue() on closed StringIO (closes #12161)
Thanks for Catalin Iacob for the patch.
-rw-r--r-- | Lib/StringIO.py | 1 | ||||
-rw-r--r-- | Lib/test/test_StringIO.py | 4 | ||||
-rw-r--r-- | Misc/ACKS | 1 | ||||
-rw-r--r-- | Misc/NEWS | 3 |
4 files changed, 9 insertions, 0 deletions
diff --git a/Lib/StringIO.py b/Lib/StringIO.py index 340fae1..f74a066 100644 --- a/Lib/StringIO.py +++ b/Lib/StringIO.py @@ -266,6 +266,7 @@ class StringIO: 8th bit) will cause a UnicodeError to be raised when getvalue() is called. """ + _complain_ifclosed(self.closed) if self.buflist: self.buf += ''.join(self.buflist) self.buflist = [] diff --git a/Lib/test/test_StringIO.py b/Lib/test/test_StringIO.py index 4774c6d..76fc3d7 100644 --- a/Lib/test/test_StringIO.py +++ b/Lib/test/test_StringIO.py @@ -100,6 +100,10 @@ class TestGenericStringIO(unittest.TestCase): self._fp.close() self.assertRaises(ValueError, self._fp.next) + def test_getvalue(self): + self._fp.close() + self.assertRaises(ValueError, self._fp.getvalue) + class TestStringIO(TestGenericStringIO): MODULE = StringIO @@ -382,6 +382,7 @@ Eric Huss Jeremy Hylton Gerhard Häring Fredrik Håård +Catalin Iacob Mihai Ibanescu Lars Immisch Bobby Impollonia @@ -83,6 +83,9 @@ Core and Builtins Library ------- +- Issue #12161: Cause StringIO.getvalue() to raise a ValueError when used on a + closed StringIO instance. + - Issue #12182: Fix pydoc.HTMLDoc.multicolumn() if Python uses the new (true) division (python -Qnew). Patch written by Ralf W. Grosse-Kunstleve. |