diff options
author | Senthil Kumaran <orsenthil@gmail.com> | 2011-04-06 06:16:08 (GMT) |
---|---|---|
committer | Senthil Kumaran <orsenthil@gmail.com> | 2011-04-06 06:16:08 (GMT) |
commit | 736975a77168aa90ab4b5bb1e56c31fd3ab26934 (patch) | |
tree | dfbbfc3cf315d7d3c69d246e880f9b6a484f637e | |
parent | 28deea1fa56379f88f3a726c8145ec893c2040d5 (diff) | |
parent | ae664fb528c86da44fbb9350cca05659c206bfc2 (diff) | |
download | cpython-736975a77168aa90ab4b5bb1e56c31fd3ab26934.zip cpython-736975a77168aa90ab4b5bb1e56c31fd3ab26934.tar.gz cpython-736975a77168aa90ab4b5bb1e56c31fd3ab26934.tar.bz2 |
merge from 3.2
-rw-r--r-- | Lib/test/test_time.py | 8 | ||||
-rw-r--r-- | Modules/timemodule.c | 2 |
2 files changed, 9 insertions, 1 deletions
diff --git a/Lib/test/test_time.py b/Lib/test/test_time.py index 2b58093..8499af8 100644 --- a/Lib/test/test_time.py +++ b/Lib/test/test_time.py @@ -3,6 +3,7 @@ import time import unittest import locale import sysconfig +import sys import warnings class TimeTestCase(unittest.TestCase): @@ -39,6 +40,13 @@ class TimeTestCase(unittest.TestCase): except ValueError: self.fail('conversion specifier: %r failed.' % format) + # Issue #10762: Guard against invalid/non-supported format string + # so that Python don't crash (Windows crashes when the format string + # input to [w]strftime is not kosher. + if sys.platform.startswith('win'): + with self.assertRaises(ValueError): + time.strftime('%f') + def _bounds_checking(self, func=time.strftime): # Make sure that strftime() checks the bounds of the various parts #of the time tuple (0 is valid for *all* values). diff --git a/Modules/timemodule.c b/Modules/timemodule.c index b24cc35..4303232 100644 --- a/Modules/timemodule.c +++ b/Modules/timemodule.c @@ -512,7 +512,7 @@ time_strftime(PyObject *self, PyObject *args) if (outbuf[1]=='#') ++outbuf; /* not documented by python, */ if (outbuf[1]=='\0' || - !wcschr(L"aAbBcdfHIjmMpSUwWxXyYzZ%", outbuf[1])) + !wcschr(L"aAbBcdHIjmMpSUwWxXyYzZ%", outbuf[1])) { PyErr_SetString(PyExc_ValueError, "Invalid format string"); return 0; |