summaryrefslogtreecommitdiff
path: root/Lib/calendar.py
diff options
context:
space:
mode:
authorRaymond Hettinger <python@rcn.com>2003-02-13 22:58:02 +0000
committerRaymond Hettinger <python@rcn.com>2003-02-13 22:58:02 +0000
commit61436489f9eb6a4c4072b05fa9b5d6dc0ef20f2b (patch)
treeb907d98fcc1c713097b35eef05c67b9900b0700d /Lib/calendar.py
parent1442dc11947fa8bd0da62c6a3282528c53bcf58f (diff)
downloadcpython-git-61436489f9eb6a4c4072b05fa9b5d6dc0ef20f2b.tar.gz
SF 685011: calendar module overflow handling
Restored a Py2.2 behavior to not range check the day of the month. A user application was this exploiting undocumented, accidental "feature".
Diffstat (limited to 'Lib/calendar.py')
-rw-r--r--Lib/calendar.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/Lib/calendar.py b/Lib/calendar.py
index 365ca26344..fb56826f6f 100644
--- a/Lib/calendar.py
+++ b/Lib/calendar.py
@@ -213,7 +213,7 @@ _EPOCH_ORD = datetime.date(EPOCH, 1, 1).toordinal()
def timegm(tuple):
"""Unrelated but handy function to calculate Unix timestamp from GMT."""
year, month, day, hour, minute, second = tuple[:6]
- days = datetime.date(year, month, day).toordinal() - _EPOCH_ORD
+ days = datetime.date(year, month, 1).toordinal() - _EPOCH_ORD + day - 1
hours = days*24 + hour
minutes = hours*60 + minute
seconds = minutes*60 + second