Avoid crash in parsedate_tz() on certain invalid dates -- when the
field assumed to be the time is in fact the year, the resulting list
doesn't have enough items, and this isn't checked for. Return None
instead.
diff --git a/Lib/rfc822.py b/Lib/rfc822.py
index 2e97ef4..b466fae 100644
--- a/Lib/rfc822.py
+++ b/Lib/rfc822.py
@@ -800,8 +800,10 @@
if len(tm) == 2:
[thh, tmm] = tm
tss = '0'
- else:
+ elif len(tm) == 3:
[thh, tmm, tss] = tm
+ else:
+ return None
try:
yy = string.atoi(yy)
dd = string.atoi(dd)