diff options
author | Petri Lehtinen <petri@digip.org> | 2012-08-15 11:00:40 (GMT) |
---|---|---|
committer | Petri Lehtinen <petri@digip.org> | 2012-08-15 11:26:27 (GMT) |
commit | 3d12c4317c2970d65bf30e941070017a8d1be210 (patch) | |
tree | 418a655a5f37bc1559f0f101c88f88cadd7b9d9b | |
parent | 2b209cd78d5a36d63b00d0a4350b78aec7bc820b (diff) | |
download | cpython-3d12c4317c2970d65bf30e941070017a8d1be210.zip cpython-3d12c4317c2970d65bf30e941070017a8d1be210.tar.gz cpython-3d12c4317c2970d65bf30e941070017a8d1be210.tar.bz2 |
#11062: Fix adding a message from file to Babyl mailbox
-rw-r--r-- | Lib/mailbox.py | 2 | ||||
-rw-r--r-- | Lib/test/test_mailbox.py | 18 | ||||
-rw-r--r-- | Misc/NEWS | 2 |
3 files changed, 9 insertions, 13 deletions
diff --git a/Lib/mailbox.py b/Lib/mailbox.py index 8b00460..73fe7d6 100644 --- a/Lib/mailbox.py +++ b/Lib/mailbox.py @@ -1443,9 +1443,9 @@ class Babyl(_singlefileMailbox): line = line[:-1] + b'\n' self._file.write(line.replace(b'\n', linesep)) if line == b'\n' or not line: - self._file.write(b'*** EOOH ***' + linesep) if first_pass: first_pass = False + self._file.write(b'*** EOOH ***' + linesep) message.seek(original_pos) else: break diff --git a/Lib/test/test_mailbox.py b/Lib/test/test_mailbox.py index 9f1fdad..65120f7 100644 --- a/Lib/test/test_mailbox.py +++ b/Lib/test/test_mailbox.py @@ -148,20 +148,16 @@ class TestMailbox(TestBase): f.write(_bytes_sample_message) f.seek(0) key = self._box.add(f) - # See issue 11062 - if not isinstance(self._box, mailbox.Babyl): - self.assertEqual(self._box.get_bytes(key).split(b'\n'), - _bytes_sample_message.split(b'\n')) + self.assertEqual(self._box.get_bytes(key).split(b'\n'), + _bytes_sample_message.split(b'\n')) def test_add_binary_nonascii_file(self): with tempfile.TemporaryFile('wb+') as f: f.write(self._non_latin_bin_msg) f.seek(0) key = self._box.add(f) - # See issue 11062 - if not isinstance(self._box, mailbox.Babyl): - self.assertEqual(self._box.get_bytes(key).split(b'\n'), - self._non_latin_bin_msg.split(b'\n')) + self.assertEqual(self._box.get_bytes(key).split(b'\n'), + self._non_latin_bin_msg.split(b'\n')) def test_add_text_file_warns(self): with tempfile.TemporaryFile('w+') as f: @@ -169,10 +165,8 @@ class TestMailbox(TestBase): f.seek(0) with self.assertWarns(DeprecationWarning): key = self._box.add(f) - # See issue 11062 - if not isinstance(self._box, mailbox.Babyl): - self.assertEqual(self._box.get_bytes(key).split(b'\n'), - _bytes_sample_message.split(b'\n')) + self.assertEqual(self._box.get_bytes(key).split(b'\n'), + _bytes_sample_message.split(b'\n')) def test_add_StringIO_warns(self): with self.assertWarns(DeprecationWarning): @@ -101,6 +101,8 @@ Core and Builtins Library ------- +- Issue #11062: Fix adding a message from file to Babyl mailbox. + - Issue #15646: Prevent equivalent of a fork bomb when using multiprocessing on Windows without the "if __name__ == '__main__'" idiom. |