diff options
author | Barry Warsaw <barry@python.org> | 2006-02-09 04:10:03 (GMT) |
---|---|---|
committer | Barry Warsaw <barry@python.org> | 2006-02-09 04:10:03 (GMT) |
commit | 261058cc1cb2f4ee3e9efb58f7a543626f93fd59 (patch) | |
tree | 1cbb2f485d0e7a6b16cb8be33821a6f802134d78 | |
parent | 8413eab95b9d15f783711c7c9c21365f340b3114 (diff) | |
download | cpython-261058cc1cb2f4ee3e9efb58f7a543626f93fd59.zip cpython-261058cc1cb2f4ee3e9efb58f7a543626f93fd59.tar.gz cpython-261058cc1cb2f4ee3e9efb58f7a543626f93fd59.tar.bz2 |
Port of r42279 to email 3.0, but without the Python 2.1 backward compatible
nonsense.
Resolve SF bug 1409403: email.Message should supress warning from uu.decode.
-rw-r--r-- | Lib/email/Message.py | 2 | ||||
-rw-r--r-- | Lib/email/test/test_email.py | 13 |
2 files changed, 14 insertions, 1 deletions
diff --git a/Lib/email/Message.py b/Lib/email/Message.py index bc76416..a5a8ff2 100644 --- a/Lib/email/Message.py +++ b/Lib/email/Message.py @@ -198,7 +198,7 @@ class Message: elif cte in ('x-uuencode', 'uuencode', 'uue', 'x-uue'): sfp = StringIO() try: - uu.decode(StringIO(payload+'\n'), sfp) + uu.decode(StringIO(payload+'\n'), sfp, quiet=True) payload = sfp.getvalue() except uu.Error: # Some decoding problem diff --git a/Lib/email/test/test_email.py b/Lib/email/test/test_email.py index 5a42c227..1360bbe 100644 --- a/Lib/email/test/test_email.py +++ b/Lib/email/test/test_email.py @@ -211,6 +211,19 @@ class TestMessageAPI(TestEmailBase): msg.set_payload('foo') eq(msg.get_payload(decode=True), 'foo') + def test_decode_bogus_uu_payload_quietly(self): + msg = Message() + msg.set_payload('begin 664 foo.txt\n%<W1F=0000H \n \nend\n') + msg['Content-Transfer-Encoding'] = 'x-uuencode' + old_stderr = sys.stderr + try: + sys.stderr = sfp = StringIO() + # We don't care about the payload + msg.get_payload(decode=True) + finally: + sys.stderr = old_stderr + self.assertEqual(sfp.getvalue(), '') + def test_decoded_generator(self): eq = self.assertEqual msg = self._msgobj('msg_07.txt') |