diff options
author | Georg Brandl <georg@python.org> | 2006-09-30 11:17:34 (GMT) |
---|---|---|
committer | Georg Brandl <georg@python.org> | 2006-09-30 11:17:34 (GMT) |
commit | 4ddfcd3b60b2c68f75a21a4f04b4a0f70caca7d5 (patch) | |
tree | 7dcf15eb27214fff779f43dbdf9789d43e265896 | |
parent | 154324a8c3bcdde62acff8272388948e3d75cb51 (diff) | |
download | cpython-4ddfcd3b60b2c68f75a21a4f04b4a0f70caca7d5.zip cpython-4ddfcd3b60b2c68f75a21a4f04b4a0f70caca7d5.tar.gz cpython-4ddfcd3b60b2c68f75a21a4f04b4a0f70caca7d5.tar.bz2 |
Bug #1556784: allow format strings longer than 127 characters in
datetime's strftime function.
-rw-r--r-- | Lib/test/test_datetime.py | 1 | ||||
-rw-r--r-- | Misc/NEWS | 3 | ||||
-rw-r--r-- | Modules/datetimemodule.c | 4 |
3 files changed, 6 insertions, 2 deletions
diff --git a/Lib/test/test_datetime.py b/Lib/test/test_datetime.py index 203bea1..436cfca 100644 --- a/Lib/test/test_datetime.py +++ b/Lib/test/test_datetime.py @@ -844,6 +844,7 @@ class TestDate(HarmlessMixedComparison): t = self.theclass(2005, 3, 2) self.assertEqual(t.strftime("m:%m d:%d y:%y"), "m:03 d:02 y:05") self.assertEqual(t.strftime(""), "") # SF bug #761337 + self.assertEqual(t.strftime('x'*1000), 'x'*1000) # SF bug #1556784 self.assertRaises(TypeError, t.strftime) # needs an arg self.assertRaises(TypeError, t.strftime, "one", "two") # too many args @@ -106,6 +106,9 @@ Library Extension Modules ----------------- +- Bug #1556784: allow format strings longer than 127 characters in + datetime's strftime function. + - Fix itertools.count(n) to work with negative numbers again. - RLIMIT_SBSIZE was added to the resource module where available. diff --git a/Modules/datetimemodule.c b/Modules/datetimemodule.c index 648ebe5..39a859f 100644 --- a/Modules/datetimemodule.c +++ b/Modules/datetimemodule.c @@ -1149,9 +1149,9 @@ wrap_strftime(PyObject *object, PyObject *format, PyObject *timetuple, PyObject *newfmt = NULL; /* py string, the output format */ char *pnew; /* pointer to available byte in output format */ - char totalnew; /* number bytes total in output format buffer, + int totalnew; /* number bytes total in output format buffer, exclusive of trailing \0 */ - char usednew; /* number bytes used so far in output format buffer */ + int usednew; /* number bytes used so far in output format buffer */ char *ptoappend; /* pointer to string to append to output buffer */ int ntoappend; /* # of bytes to append to output buffer */ |