[issue9888] int overflow in datetime causes seg fault from datetime.ctime()
Brian Bernstein
report at bugs.python.org
Fri Sep 17 23:31:57 CEST 2010
Brian Bernstein <bernie9998 at gmail.com> added the comment:
After further investigation, it appears the cause is the ability to overflow the datetime object by almost a year. I've modified the test to demonstrate this relative to the current date:
from datetime import date, datetime, timedelta
(datetime.now()-timedelta((date.today()-date(1,1,1)).days+364)).ctime()
It seems the date can be overflowed by up to a year without throwing an Exception. The result of which is a seg fault when calling the bound ctime method.
Note that anything above 364 results in OverFlowError. Below 18 still overflows, but does not seg fault, instead resulting in a weird result,e.g.:
'Tue (null) 240 17:25:37 0001'
I'll update the script to demonstrate the edge cases where this occurs.
----------
Added file: http://bugs.python.org/file18910/segfault.py
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue9888>
_______________________________________
More information about the Python-bugs-list
mailing list