summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
authorBarry Warsaw <barry@python.org>2004-08-07 16:38:40 (GMT)
committerBarry Warsaw <barry@python.org>2004-08-07 16:38:40 (GMT)
commite8bedeb45b134e7ae033560353ba064738170cd3 (patch)
tree907fce19729560604ac9a2da59efc4c5a6741fd6 /Lib
parent2c178253bd1f78545d412670c59060dc7c676f8c (diff)
downloadcpython-e8bedeb45b134e7ae033560353ba064738170cd3.zip
cpython-e8bedeb45b134e7ae033560353ba064738170cd3.tar.gz
cpython-e8bedeb45b134e7ae033560353ba064738170cd3.tar.bz2
Resolution of bug #997368, "strftime() backward compatibility".
Specifically, time.strftime() no longer accepts a 0 in the yday position of a time tuple, since that can crash some platform strftime() implementations. parsedate_tz(): Change the return value to return 1 in the yday position. Update tests in test_rfc822.py and test_email.py
Diffstat (limited to 'Lib')
-rw-r--r--Lib/email/_parseaddr.py2
-rw-r--r--Lib/email/test/test_email.py4
-rw-r--r--Lib/rfc822.py2
-rw-r--r--Lib/test/test_rfc822.py2
4 files changed, 5 insertions, 5 deletions
diff --git a/Lib/email/_parseaddr.py b/Lib/email/_parseaddr.py
index 167eb3f..4a31aff 100644
--- a/Lib/email/_parseaddr.py
+++ b/Lib/email/_parseaddr.py
@@ -116,7 +116,7 @@ def parsedate_tz(data):
else:
tzsign = 1
tzoffset = tzsign * ( (tzoffset/100)*3600 + (tzoffset % 100)*60)
- tuple = (yy, mm, dd, thh, tmm, tss, 0, 0, 0, tzoffset)
+ tuple = (yy, mm, dd, thh, tmm, tss, 0, 1, 0, tzoffset)
return tuple
diff --git a/Lib/email/test/test_email.py b/Lib/email/test/test_email.py
index 1749102..4479fb2 100644
--- a/Lib/email/test/test_email.py
+++ b/Lib/email/test/test_email.py
@@ -2098,12 +2098,12 @@ class TestMiscellaneous(unittest.TestCase):
def test_parsedate_no_dayofweek(self):
eq = self.assertEqual
eq(Utils.parsedate_tz('25 Feb 2003 13:47:26 -0800'),
- (2003, 2, 25, 13, 47, 26, 0, 0, 0, -28800))
+ (2003, 2, 25, 13, 47, 26, 0, 1, 0, -28800))
def test_parsedate_compact_no_dayofweek(self):
eq = self.assertEqual
eq(Utils.parsedate_tz('5 Feb 2003 13:47:26 -0800'),
- (2003, 2, 5, 13, 47, 26, 0, 0, 0, -28800))
+ (2003, 2, 5, 13, 47, 26, 0, 1, 0, -28800))
def test_parseaddr_empty(self):
self.assertEqual(Utils.parseaddr('<>'), ('', ''))
diff --git a/Lib/rfc822.py b/Lib/rfc822.py
index 3811a59..3b4246d 100644
--- a/Lib/rfc822.py
+++ b/Lib/rfc822.py
@@ -927,7 +927,7 @@ def parsedate_tz(data):
else:
tzsign = 1
tzoffset = tzsign * ( (tzoffset//100)*3600 + (tzoffset % 100)*60)
- tuple = (yy, mm, dd, thh, tmm, tss, 0, 0, 0, tzoffset)
+ tuple = (yy, mm, dd, thh, tmm, tss, 0, 1, 0, tzoffset)
return tuple
diff --git a/Lib/test/test_rfc822.py b/Lib/test/test_rfc822.py
index c450bf9..491bc8a 100644
--- a/Lib/test/test_rfc822.py
+++ b/Lib/test/test_rfc822.py
@@ -53,7 +53,7 @@ class MessageTestCase(unittest.TestCase):
out = m.getdate('date')
if out:
self.assertEqual(out,
- (1999, 1, 13, 23, 57, 35, 0, 0, 0),
+ (1999, 1, 13, 23, 57, 35, 0, 1, 0),
"date conversion failed")