summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSenthil Kumaran <orsenthil@gmail.com>2011-04-06 06:16:08 (GMT)
committerSenthil Kumaran <orsenthil@gmail.com>2011-04-06 06:16:08 (GMT)
commit736975a77168aa90ab4b5bb1e56c31fd3ab26934 (patch)
treedfbbfc3cf315d7d3c69d246e880f9b6a484f637e
parent28deea1fa56379f88f3a726c8145ec893c2040d5 (diff)
parentae664fb528c86da44fbb9350cca05659c206bfc2 (diff)
downloadcpython-736975a77168aa90ab4b5bb1e56c31fd3ab26934.zip
cpython-736975a77168aa90ab4b5bb1e56c31fd3ab26934.tar.gz
cpython-736975a77168aa90ab4b5bb1e56c31fd3ab26934.tar.bz2
merge from 3.2
-rw-r--r--Lib/test/test_time.py8
-rw-r--r--Modules/timemodule.c2
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;